SQL server 2005 + vb.net 100条数据(从datagridview)

OnlineLearner 2011-05-03 09:57:20
请问,如果没有做任何检查,直接save 了就insert去sql server 2005,
大约需要多少时间?

==== 另一个问题 =====
最近我做了一个 Excel 导入 datagridview ,然后再从datagrdiview insert进去 SQL server
但是时间并不理想,100条,超过10秒

因为我需要从这100条数据中再每一条做检查,查看有没有在SQL server 里面

for i as integer = 0 to datagridview.rows.count -1
'这里先链接了一次数据库做查询
if Count > 0 then
Insert

else
Continue for

End

next



单单是这这个小问题,就花了我很多时间,我觉得不是很理想,请问哟没有办法能加速呢?
谢谢。
...全文
119 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
OnlineLearner 2011-05-03
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 do_do_tony 的回复:]

链接数据库次数太多了,在FOR前面连接数据库,将excel数据写入datatable,再导入到SQL中的临时表。这样与保存的目标表进行对比,一样的就不要insert了,会快很多的。
[/Quote]

我已经导入到了dataset,请问要怎样才能一次过导入到临时表?
我在google查询着,如果方便,请指点,谢谢。
do_do_tony 2011-05-03
  • 打赏
  • 举报
回复
链接数据库次数太多了,在FOR前面连接数据库,将excel数据写入datatable,再导入到SQL中的临时表。这样与保存的目标表进行对比,一样的就不要insert了,会快很多的。
OnlineLearner 2011-05-03
  • 打赏
  • 举报
回复
对了,请问有没有例子是
直接把 dataset全部的数据insert into sqldatabase 呢?
OnlineLearner 2011-05-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 allanli 的回复:]

可以直接把那100条数据插入临时表
然后用一条语句把不存在的插入最后的表
那样就不用每行判断了,应该快很多

insrt into 数据表(xxx)
select xxx from 临时表
where ID not in (select id from 数据表)
[/Quote]

请问一下,那么是不是直接用 datagridview 的数据 insert into 临时表?
谢谢
我发现我笨了很久。呵呵
musicrabbit 2011-05-03
  • 打赏
  • 举报
回复
[Quote=引用楼主 interhker 的回复:]
请问,如果没有做任何检查,直接save 了就insert去sql server 2005,
大约需要多少时间?

==== 另一个问题 =====
最近我做了一个 Excel 导入 datagridview ,然后再从datagrdiview insert进去 SQL server
但是时间并不理想,100条,超过10秒

因为我需要从这100条数据中再每一条做检查,查看有没有在SQ……
[/Quote]

+1


不在应用程序里控制判断,直接在数据库存储过程写判断吖
allanli 2011-05-03
  • 打赏
  • 举报
回复
可以直接把那100条数据插入临时表
然后用一条语句把不存在的插入最后的表
那样就不用每行判断了,应该快很多

insrt into 数据表(xxx)
select xxx from 临时表
where ID not in (select id from 数据表)
OnlineLearner 2011-05-03
  • 打赏
  • 举报
回复
大家好,现在我已经学会了使用SqlBulkCopy 直接导入到了临时表
那么现在是不是我不需要使用存储过程了?
我直接使用临时表导入到表中?

16,720

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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