=======VB循环插入数据速度很慢========
大家好,我用VB读取Excel中的数据,然后把里面的数据循环写入到远程服务器的SQLserver2000中的表中。
如果在本地执行,速度挺快的,但是一旦写入到远程数据库,速度很慢很慢啊。我的网速是adsl 1M的,也不能这么慢啊。
请问各位有没有好的办法?
==============================================
附上程序:
Dim excel_app As Object
Dim excel_sheet As Object
Set excel_app = CreateObject("excel.application") 'excel对象
Set excel_app = New Excel.Application
excel_app.Workbooks.Open FileName:=Text1.Text
If Val(excel_app.Application.Version) >= 8 Then '检查excel文件的版本
Set excel_sheet = excel_app.ActiveSheet
Else
Set excel_sheet = excel_app
End If
'''创建sql表格
Dim Row
For Row = 2 To 1000 '取Excel表格中的2-1000行
DoEvents
’写入到远程的sqlserver中
Dim rs2 As New ADODB.Recordset
rs2.Open "select top 1 * from t_client", conn, 1, 3
rs2.AddNew
rs2.Fields("c_id") = c_id
rs2.Fields("c_name") = c_name
rs2.Fields("c_intime") = Now()
rs2.Fields("c_inman") = "admin"
rs2.Fields("c_valid") = 1
rs2.Update
rs2.Close
'写入结束
Row = Row + 1 '读取下一行数据
Next
excel_app.Quit
Set excel_app = Nothing
Set excel_sheet = Nothing
[解决办法]
你可以直接連上SQL,用T_SQL語言來寫入sql里
可以去以下學習下:
http://baike.baidu.com/view/68525.htm
http://hi.baidu.com/%BB%B8%C9%F1/blog/item/518dae60d4c18841eaf8f8c6.html