vb中如何一次性插入多笔数据
环境:Oracle 9i + vb 6.0 + win XP
现在我有段代码需要循环插入500条记录到数据库,每条记录只有1个字段不同,SN随序列好变化而变化
for x=1 to 500
BB = "ABC " & x
sql = "insert into WZ_info(aa,SN) values( 'AA ',BB) "
next
这样执行的效率很低,请问有没有什么方法可以一次性插入这500笔记录???
[解决办法]
recordset对象的updatebatch
你可以参考ado手册
[解决办法]
插入500数据不一定需要执行500次SQL,一次就可以了,如:
方法一:直接执行SQL
' 针对 Oracle
insert into test(id,value)
select 1, 'a ' from dual union all
select 2, 'b ' from dual union all
select 3, 'c ' from dual ...
方法二:批更新。
for i = 1 to 500
rs.addnew
rs.fields( "id ").value = i
rs.fields( "value ").value = format(i, "0000 ")
next
rs.UpdateBatch