LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

用asp将excel数据导入sql server(或Access)中源码

admin
2010年11月18日 20:38 本文热度 3502

因为现在在做个项目,客户要求能将Excel里的数据导入到数据库中(sql 2000)(,在网上搜索了很久,都没有详细点的,经过修改后,终于实现了这功能,特发出来供有需要的朋友参考.

将Excel中的数据导入到sql 2000(Access)中,前提是在sql 2000(Access)中的表已经建好。

有两个文件,excel.htm,excelTosql.asp

excel.htm用于建立个表单页面,让用户选择文件来源.代码如下:

以下是excel.htm代码

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>

<body>
<form action="excelTosql.asp" method="post" name="form1" id="form1">
   <p>
     <input name="bbb" type="file" id="bbb" size="30" />
    
   </p>
   <p>
     <input type="submit" name="Submit" value="提交" />
</p>
</form>
</body>
</html>

excelTosql.asp:用于处理表单提交过来的数据(显示并写入数据库),代码如下:

以下是excelTosql.asp代码片段:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%'sql 连接驱动
dim conn,connstr,time1,time2,mdb
time1=timer

'如果是sql 2000数据库,请用下面 连接驱动
connstr = "Driver={SQL Server};server=(local);uid=sa;pwd=123;database=jmgl2007;"
'如果是Access数据库,请用下面 连接驱动
'connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(mdb/jmgl2007.mdb)

Set conn = Server.Createobject("ADODB.Connection")
conn.Open connstr
If Err Then
err.Clear
Set Conn = Nothing
Response.Write "数据库连接出错,请检查连接字串。"
Response.End
End If

sub closedb()
conn.close
set conn=nothing
end sub
   
    dim aa
   aa=request.form("bbb")   '获取传递过来的值

   Dim    StrConnect,cc   
   Dim    objConn   
   Dim    rs   
   Dim    Sql   
   cc=0
   'Excel连接驱动
   aaa="provider=Microsoft.Jet.OLEDB.4.0; Data Source="&aa&";Extended Properties='Excel 8.0;HDR=yes;IMEX=1'"

    set StrConnect=CreateObject("ADODB.Connection")
StrConnect.Open aaa

   Set    objConn=CreateObject("ADODB.Connection")
  
   objConn.Open    StrConnect   
    
   '注意    表名一定要以下边这种格试    "[表名$]"    书写   
   Set    rs = Server.CreateObject("ADODB.Recordset")     
   Sql="select    *    from    [sheet1$]    "   
   rs.Open    Sql,StrConnect,2,2     
   IF      rs.Eof    And      Rs.Bof    Then   
   response.Write("<script>alert    ('没有资料可以导入!');history.go(-1)</script>")   
    
   else   
    
   Do    While    Not    rs.EOF
   '列出表内信息  
     response.write"excel数据为: <br>"
     response.write ""&rs(0)&"-"&rs(1)&"-"&rs(2)&""
response.write"<br>"
   set    rssql=server.CreateObject("adodb.recordset")
   '插入SQL2000里   
   rssql.Open    "select    *    from    abc",conn,1,3   
   rssql.AddNew   
   if    rs(0)<>""    then   
   rssql(1)=rs(0)   
   end    if   
   if    rs(1)<>""    then   
   rssql(2)=rs(1)   
   end    if   
   if    rs(2)<>""    then   
   rssql(3)=rs(2)   
   end    if   
    
   rssql.Update   
   Rs.MoveNext   
    
   Loop   
   end    if   
   response.Write    "<script    language=javascript>alert('资料导入成功!\n共有"&cc&"条数据导入');history.go(-1)</script>" 
   %>   


该文章在 2010/11/18 20:41:03 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved