关于大量数据操作的问题?

rgbcy 2004-08-12 11:44:51
sql server的回滚需要占用什么资源呢?怎样可以进行监控,怎么设置回滚段的大小?

还有在sql server 里插大入大量的数据时(几百万条,甚至更多)

我做过试验,从一个dbf数据库读1万条数据,对某些字段修改后,再写入sql server时,
如果用ADO,读一条记录,再Addnew,update,插入所有记录用时25秒,
如果写一存储过程,用insert语句,最后Commtrans提交事务的方式,用时15秒

我想问的时,在VB里面,插入大量数据时,用什么方式最快,有什么好的方式?
...全文
128 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
rgbcy 2004-08-16
  • 打赏
  • 举报
回复
sql server的回滚需要占用什么资源呢?怎样可以进行监控,怎么设置回滚段的大小?
饮水需思源 2004-08-13
  • 打赏
  • 举报
回复
private sub command1_click()
on error goto err_comman1
conn.begintrans '开启事务
conn.execute "insert into tablename(...) values(...)" '插入数据
conn.execute "update tablename set ... where ..." '修改数据
conn.execute "delete from tablename where ..." '删除数据
'如果为删除表中所有记录,则可用conn.execute "truncate table tablename"
conn.committrans '提交事务
exit sub
err_comman1:
conn.rollbacktrans '操作出错回滚事务
msgbox "操作错误,错误原因为:" err.description,48,"提示"
exit sub
end sub
lihonggen0 2004-08-12
  • 打赏
  • 举报
回复
如果在vb里,这样最快:
cn.execute "insert into table values...."
mePower 2004-08-12
  • 打赏
  • 举报
回复
我想是
cn.execute tsql
后就提交事务。
rgbcy 2004-08-12
  • 打赏
  • 举报
回复
没有人知道么?
rgbcy 2004-08-12
  • 打赏
  • 举报
回复
用insert into快多少呢?
用insert into操作,需不需要commtrans,如果需要,是放在最后,还是每insert into一次,就Commtrans?


sql server的回滚需要占用什么资源呢?怎样可以进行监控,怎么设置回滚段的大小?
落伍者 2004-08-12
  • 打赏
  • 举报
回复
connction对象的 execute方法,执行sql语句
不过,我想如果用文件导入导出的方法应该更快些,没有做过。
Andy__Huang 2004-08-12
  • 打赏
  • 举报
回复
也可以這樣
sql="insert into table values(field1,field2....) select (field1,field2....) from table2 where....."

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧