admin 管理员组文章数量: 887021
2024年1月22日发(作者:jsp入门教程简单博客系统)
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_file
for each formName in
set file=(formName)
fName=me
FileExt=t
if ze<100 then
""
()
end if
UpLoadFile_ID=split(UpLoadFileType,"|")
for i=0 to ubound(UpLoadFile_ID)
if UpLoadFile_ID(i)=FileExt then
FileTypeErr=False
exit for
end if
next
if FileTypeErr=True then
""
()
end if
mapurl=trim(fName)
File h(mapurl) //保存文件
set file=nothing
next
set upload=nothing
FilePath=h(mapurl) //将上传的文件路径赋值给FilePath
End Function
2、预览数据,选择数据导入到sql数据库中
我们采用函数的实现,代码如下:
call ExcelToSql(fName,FilePath)
Function ExcelToSql(ExName,FilePath,Mainbody)
Dim conn_xls
Dim StrConn_xls
Dim Rs
Dim Sql
Dim i
ExTName = "Sheet1"
On Error Resume Next
Set conn_xls =Object("tion")
StrConn_xls="Driver={Microsoft Excel Driver (*.xls)};DBQ="&
h(""&ExName)
conn_ StrConn_xls
Set rs_xls = Object("set")
Sql="select * from ["&ExTName&"$]"
rs_ Sql,conn_xls ,3,3
If Err Then
Set conn_xls = Nothing
set rs_xls=nothing
Delete_UpLoadFile(FilePath)
""
()
End If
if rs_ then
Set conn_xls = Nothing
set rs_xls=nothing
Delete_UpLoadFile(FilePath)
""
()
else
i=1
mainbody=mainbody & "
align=""center""> | align=""center"">编号 | 姓名 | align=""center"">性别 | 省份 |
type=""checkbox"" name=""ID"&i&""" value=""ON"" checked> | " "&payrollcode&" type=""hidden"" name=""payrollcode"&i&""" value="&payrollcode&"> | " "&Rs_xls(1)&" type=""hidden"" name=""cname"&i&""" value="""&trim(Rs_xls(1))&"""> | " "&Rs_xls(2)&" type=""hidden"" name=""***"&i&""" value="""&trim(Rs_xls(2))&"""> | " "&Rs_xls(3)&" type=""hidden"" name=""shengfen"&i&""" value="""&trim(Rs_xls(3))&"""> | "
colspan=""10""> 总数:"&i-1&" |
name=""B1"" value="" 导 入 "" class=""Inputbtn"">
"mainbody=mainbody & "
type=""hidden"" name=""FilePath"" value="&FilePath&">"
End Function
3、删除上传的excel文件
利用FSO组件删除
call Delete_UpLoadFile(FilePath)
Function Delete_UpLoadFile(FilePath)
Set Fso=object("stemobject")
If ists(FilePath) then
File FilePath,true
End If
End Function
4、完整的excel导入sql数据库方法
if request("Action")="upload" then
call UploadFile(fName,FilePath)
call ExcelToSql(fName,FilePath)
call Delete_UpLoadFile(FilePath)
ct ""
end if
需要注意的几个地方:
1、请参照文件的格式进行数据导入,如果excel数据列有增加,可以对程序做适当的修改
2、如果在导入数据时,提示“文件格式有误”,请检查ExTName指定的名称和excel文件里的sheet名称是否一致;excel文件是否是标准的excel文件格式。
3、确保FilePath在几个函数之间传输时,值不会丢失
4、该程序文件和excel文件在同一目录下,如果不在同一目录,在上传的路径地方做适当的修改
5、确保everyone对该目录有读写权限,这样在上传和删除文件时不会报错
6、在导入中文数据时,可能会出现乱码,中文变问号等情况,可以在读取数据的页面头加入下面的编码:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%ge=936%>
好了,上面就是excel导入sql数据库方法,点击下载:excel导入sql数据库源码。
版权声明:本文标题:excel导入sql数据库方法 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1705895811h492907.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论