excel导入sql数据库方法.doc_第1页
excel导入sql数据库方法.doc_第2页
excel导入sql数据库方法.doc_第3页
excel导入sql数据库方法.doc_第4页
excel导入sql数据库方法.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

excel导入sql数据库方法在网上看到很多朋友在咨询excel导入sql数据库方法,前段时间做项目时客户有这个功能需求,所以今天给大家分享一下实现的方法。先介绍一个思路:将excel文件上传到服务器,然后预览数据,可以对数据进行筛选,点击“导入”后将选择的数据导入到sql数据库中,最后把上传的文件从服务器上删除,释放空间。好了,接下来我们就按步骤来讲解excel导入sql数据库方法。1、excel文件上传到服务器我们采用函数的实现,代码如下:call UploadFile(fName,FilePath) Function UploadFile(fName,FilePath) UpLoadFileType= x l s | /设置允许上传的文件类型 FileTypeErr=True set upload=new upload_filefor each formName in upload.File set file=upload.File(formName) fName=file.FileNameFileExt=file.FileExtif file.filesize100 thenResponse.Write Response.Write alert(文件地址不能为空);Response.Write location.href= Request.asp; Response.Write Response.end() end if UpLoadFile_ID=split(UpLoadFileType,|)for i=0 to ubound(UpLoadFile_ID) if UpLoadFile_ID(i)=FileExt then FileTypeErr=False exit forend if next if FileTypeErr=True thenResponse.Write Response.Write alert(文件类型错误);Response.Write location.href= Request.asp; Response.Write Response.end()end ifmapurl=trim(fName)file.SaveToFile Server.mappath(mapurl) /保存文件set file=nothing next set upload=nothing FilePath=Server.mappath(mapurl) /将上传的文件路径赋值给FilePathEnd Function2、预览数据,选择数据导入到sql数据库中我们采用函数的实现,代码如下:call ExcelToSql(fName,FilePath) Function ExcelToSql(ExName,FilePath,Mainbody) Dim conn_xlsDim StrConn_xlsDim RsDim SqlDim iExTName = Sheet1On Error Resume NextSet conn_xls =Server.CreateObject(ADODB.Connection)StrConn_xls=Driver=Microsoft Excel Driver (*.xls);DBQ=& Server.MapPath(&ExName)conn_xls.Open StrConn_xlsSet rs_xls = Server.CreateObject(ADODB.Recordset) Sql=select * from &ExTName&$rs_xls.Open Sql,conn_xls ,3,3 If Err Thenerr.ClearSet conn_xls = Nothingset rs_xls=nothingDelete_UpLoadFile(FilePath)Response.Write Response.Write alert(文件格式有误);Response.Write location.href= Request.asp; Response.Write Response.end()End Ifif rs_xls.eof thenSet conn_xls = Nothingset rs_xls=nothingDelete_UpLoadFile(FilePath)Response.Write Response.Write alert(Excel文件中无数据);Response.Write location.href= Request.asp; Response.Write Response.end()elsei=1mainbody=mainbody & mainbody=mainbody &  编号姓名性别省份do while not rs_xls.eof由于excel在处理数据类型时,前面无法带0,补0操作if len(Rs_xls(0)10 then cc= aa=10-len(Rs_xls(0) for c=1 to aa cc=cc & 0 nextend ifpayrollcode=cc & Rs_xls(0) 如果导入的excel数据列有变化,请对程序做适当的修改mainbody=mainbody & mainbody=mainbody & mainbody=mainbody & &payrollcode&mainbody=mainbody & &Rs_xls(1)&mainbody=mainbody & &Rs_xls(2)&mainbody=mainbody & &Rs_xls(3)&mainbody=mainbody & i = i +1rs_xls.MovenextLoopend ifrs_xls.closeset rs_xls=nothingconn_xls.closeset StrConn_xls=nothingmainbody=mainbody &  总数:&i-1& mainbody=mainbody & mainbody=mainbody & End Function3、删除上传的excel文件利用FSO组件删除call Delete_UpLoadFile(FilePath) Function Delete_UpLoadFile(FilePath) Set Fso=server.createobject(scripting.filesystemobject) If Fso.FileExists(FilePath) thenFso.DeleteFile FilePath,trueEnd IfEnd Function4、完整的excel导入sql数据库方法if request(Action)=upload then call UploadFile(fName,FilePath)call ExcelToSql(fName,FilePath)call Delete_UpLoadFile(FilePath)response.redirect Request.asp Response.Endend if需要注意的几个地方:1、请参照example.xls文件的格式进行数据导入,如果excel数据列有增加,可以对程序做适当的修改2、如果在导入数据时,提示“文件格式有误”,请检查ExTName指定的名称和excel文件里的sheet名称是否一致;excel文件是否是标准的excel文件格式。3、确保FilePath在几个函数之间传输时,值不会丢失4、该程序文件和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论