日期:2014-05-17  浏览次数:20596 次

可以批量插入数据吗?
因为工作需要,想批量插入数据。从页面(ASP.NET)传入的数据如下:
参数1:1,2,3,4,5
参数2:100,200,300,400,500
参数3:2013-2-28
因为不想拆解参数1和参数2
能不能用最简单的方法将数据写入表中,得到的结果如下:
字段1  字段2  字段3
1     100     2013-2-28
2     200     2013-2-28
3     300     2013-2-28
4     400     2013-2-28
5     500     2013-2-28
如果拆解参数的话,将要在存储过程中循环INSERT INTO Table......5次。
请问能不能一次就OK?

------解决方案--------------------
如果你需要最后在表格中得到5行数据,那么必须执行5次insert,这个你是绕不过去的.

你现在可以简化的步骤是,你可以把你的3个参数作为自定义参数一次性给入到存储过程,存储过程在数据库上执行5次insert.
------解决方案--------------------
参数1,2先分别存入表1,表2中,再合并
------解决方案--------------------
先在内存的二维数组或grid里填充生成
再循环行、列生成sql,一次性提交插入
------解决方案--------------------
INSERT INTO T
     SELECT t1,t2,t3 FROM @Temp

想办法把数据放入@Temp,xml 方式是个不错的方法
------解决方案--------------------
引用:
INSERT INTO T
     SELECT t1,t2,t3 FROM @Temp

想办法把数据放入@Temp,xml 方式是个不错的方法


想绕过insert 5 次,这是一个好方法。但xml里要绕五次