为什么excel表格里的数据不能正常导入access数据库?
由于自己以前的开发工具是java对asp不太熟悉但是最近给公司用ASP做个小项目,项目里有个部分需要将excel表格文件的企业信息数据导入access数据库的企业信息表里。。不知道为什么我的代码通过不了测试一直提示:
错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是 1。
/pdxt/comm/qywjcl_sc.asp, 第 27 行
我的页面代码如下:
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.Open "Driver={Microsoft Excel Driver (*.xls)};ReadOnly=0;DBQ=" & Server.MapPath("uploadfile/qyxx.xls")
SQL1="select * from [sheet1$]"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL1, Conn
Set Conn2=Server.CreateObject("ADODB.Connection")
set cmd = server.createobject("adodb.command")
Conn2.Open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("kfxt.mdb")
cmd.activeconnection=Conn2
Do While Not rs.Eof
if rs(0)<>""and rs(2)<>"" then
strSql = "Insert into sys_qyxx qysh,qybh,qymc,qydz,qylxr,lxdh,sbfwzzrq,rzfwzzrq,ssdq,ssdx,kyzt) Values ('"& rs(0) &"', "& rs(1) &", '"& rs(2) &"', '"& rs(3) &"', '"& rs(4) &"', '"& rs(5)&"', '"& rs(6)&"', '"& rs(7)&"', '"& rs(8)&"', '"& rs(9)&"', '"& rs(10) &"')"
end if
cmd.commandtext=strSql <--------------27行 提示这行代码出错。。。。。
cmd.execute
rs.movenext
Loop
Conn2.close
Conn.close
sys_qyxx表的字段都是文本类型,excel表格里的数据也都是文本类型。
另外该操作需要保持原子性需要用到事务,不知道ado的事务是如何操作的也请赐教。谢谢。