mysql中的insert语句真是太好用了,可是不知是不是sql标准?
两个方便之处:
假如一个表 table1,有字段 f1,f2
1.可以这样
insert table1
set f1=1,f2=5
这很方便,以前在mssql中,只能
insert table1 (f1,f2) values(1,5)2.一次插入多行可以这样
insert table1 (f1,f2)
values (1,5),
(2,7),
(5,8)以前在mssql中只能这样
insert table1(f1,f2)
select 1,5 
union all 
select 2,7
union all
select 5,8可见,mysql 中的语法简洁了许多。

解决方案 »

  1.   

    但是我还是想问问,
    mysql中的写法,好象不是标准sql吧。
      

  2.   

    不是SQL 2003的标准, MySQL自己搞的。
      

  3.   

    但是这种写法太方便了。呵呵。愿早一天纳入sql标准。
      

  4.   

    1.可以这样
    insert table1
    set f1=1,f2=5
    这很方便,以前在mssql中,只能
    insert table1 (f1,f2) values(1,5)
    语句那句话是错误的 mssql也可以的 只是要稍微换下
    insert table1(f1,f2)
    select 1,52.一次插入多行可以这样
    insert table1 (f1,f2)
    values (1,5),
    (2,7),
    (5,8)以前在mssql中只能这样
    insert table1(f1,f2)
    select 1,5  
    union all  
    select 2,7
    union all
    select 5,8
    SQL SERVER2008 现在支持
    insert table1 (f1,f2)
    values (1,5),
    (2,7),
    (5,8)
      

  5.   

    哈哈,我一直都用
    insert table1 set f1=1,f2=5
    這種寫法,
    還不知道原來不是SQL 2003 的標準啊
      

  6.   


    实际上,这个已经成为sql 2008标准。不知道哪位有标准文档下载,可否共享一份。我只是看到一些内部ppt介绍。没看到正式标准文档下载。sigh。