excel表格上传并导入sql,如数据大,并有多个客户同时上传,应该如何处理呢?

cbvivian 2006-10-10 09:50:48
请问,我用ASP做了上传excel表格并加到sql里,如果同时有很多客户端上传,或excel比较大时,应该怎么处理呢?用存储过程?应该怎么写代码呢?下面是我用ASP的代码:
DIM id,rs1,sql,connXLS,rsXLS,iXLS
iXLS=0
Set connXLS = Server.CreateObject("ADODB.Connection")
connXLS.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FSPath&FileName & ";Extended Properties=Excel 8.0"

Set rsXLS = Server.CreateObject("ADODB.Recordset")
rsXLS.Open "SELECT * FROM [Sheet1$]", connXLS, 2, 2

id=session("id")
set rs1=server.createobject("adodb.recordset")
rs1.open "select * from stock where gsid='"&id&"'",conn,1,3
IF Not (RS1.EOF And Rs1.Bof) THEN
sql="delete from stock where gsid="&id&""
conn.execute sql
end if

IF RsXLS.Eof And RsXLS.Bof Then
Response.write "没有找到您需要的数据!!"
Else
While Not RsXLS.EOF
'导入开始
rs1.addnew
rs1("Part")=trim(RsXLS(0))
rs1("Mfg")=trim(RsXLS(1))
rs1("Qty")=trim(RsXLS(2))
rs1("DC")=trim(RsXLS(3))
rs1("Package")=trim(RsXLS(4))
rs1("Descrption")=trim(RsXLS(5))
rs1("Price")=trim(RsXLS(6))
rs1("Gsid")=session("id")
rs1("Datetime")=trim(RsXLS(7))
rs1.update
'导入结束
iXLS=iXLS+1
RsXLS.MoveNext
Wend
End IF
...全文
203 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
huailairen 2006-10-11
  • 打赏
  • 举报
回复
假如你的web服务器和数据库在同一台机器上的话,不要用这样的方法
你可以用sql提供的openrowset 直接对excel表格进行处理。
这样比较快,而且方便
假如不是在一台上,可以把文件共享给数据库服务器,影射个网络磁盘也可以。
ahui_net 2006-10-10
  • 打赏
  • 举报
回复
是不是做ic库存上传啊?qq:751227

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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