读书人

求sql如何一次用insert 添加多条数据

发布时间: 2013-11-18 11:57:15 作者: rapoo

求sql怎么一次用insert 添加多条数据
INSERT INTO BillInfo
(BillID
,BID
,IWtime
,Storage)
VALUES
('1',1,'2012-11-19',100)
,('2',1,'2012-11-19',100)
,('3',1,'2012-11-19',100)
,('4',1,'2012-11-19',100)
我试了下上面的方法不能用,请问还有什么方法可以么?
我用的sqlserver 2005的数据库
[解决办法]
INSERT INTO BillInfo
(BillID
,BID
,IWtime
,Storage)
select '1',1,'2012-11-19',100 union all
select '2',1,'2012-11-19',100 union all
select '3',1,'2012-11-19',100 union all
select '4',1,'2012-11-19',100
[解决办法]
你用的这种方式只有在sql server 2008及以上版本的数据库才支持。
2005的话可以用这种方式:
INSERT INTO BillInfo
(BillID
,BID
,IWtime
,Storage)
select '1',1,'2012-11-19',100 union all select '2',1,'2012-11-19',100 union all select '3',1,'2012-11-19',100

[解决办法]

引用:
引用:INSERT INTO BillInfo
(BillID
,BID
,IWtime
,Storage)
select '1',1,'2012-11-19',100 union all
select '2',1,'2012-11-19',100 ……


union all 是关键字,你可以这样理解:这种用法你应该熟悉把,从B表中选一些数据插入到A表,就这样写 insert into A (column1,column2) select column1,column2 from B。上面那个语句中的select '1',1,'2012-11-19',100 union all
select '2',1,'2012-11-19',100 union all
select '……
你就当作是 select column1,column2 from B。就是说把你要出入的那些数据作为一个集合一次性插入到BillInfo这个表中。至于union all的作用和用法这里就不说了,网上一堆。

读书人网 >C#

热点推荐