SQLServer使⽤⼀个语句块批量插⼊多条记录的三种⽅法我们在⽇常操作中,免不了对数据库的某张表,⼀次性的要插⼊多条记录,但是⾸先想到的就是复制,粘帖N多重复的INSERT INTO 语句,万⼀某⼀个少了⼀个分号,或多个逗号之类的,产⽣错误,要起来可就费尽了,既浪费时间,⼜耽误⼯作。
除了上⾯所说的⽅法外,其实还有⼆中⽅法,相⽐较起来要⽐之前那个要简洁。
⾸先是之前那个⽅法:
复制代码代码如下:
INSERT INTO MyTable(ID,NAME) VALUES(1,'123');
INSERT INTO MyTable(ID,NAME) VALUES(2,'456');
INSERT INTO MyTable(ID,NAME) VALUES(3,'789');
第⼆种⽅法,使⽤UNION ALL来进⾏插⼊操作:
复制代码代码如下:
INSERT INTO MyTable(ID,NAME)
SELECT 4,'000'
UNION ALL
SELECT 5,'001'
一块操UNION ALL
SELECT 6,'002'
是不是要⽐第⼀种⽅法简单点,据说要⽐第⼀种要快!
第三种⽅法就有点特别了,是SQL Server2008特有的,所以,如果你不是SQL Server2008,就不能使⽤这种⽅法了,所以赶快升级吧!体验⼀下SQL Server2008给我们带了的好处。
复制代码代码如下:
INSERT INTO MyTable(ID,NAME)
VALUES(7,'003'),(8,'004'),(9,'005')
上⾯演⽰了3种不同的⽅法来向数据库⼀次插⼊多条数据,第三种⽅法看起来⽐较简洁⾼效,推荐⼤家都赶快升级到SQL Server2008吧。