注册 登录
编程论坛 ASP技术论坛

关于excel导入数据库的问题

zhangjianghan 发布于 2008-05-16 17:59, 672 次点击
问题是Excel导入数据库的时候,不管数据库的字段是用什么类型,是纯数字的时候就不能写进,前面数字带有字母或字符的时候都可以写进,我要求的是不管是数字还是字符或字母都可以写进,大家帮忙看看!
这是导入数据库的代码:
<%
Dim cn,aa,oConn,connstr
'打开XLS.
aa=request.form("bbb")
Set cn = Server.CreateObject("ADODB.Connection")
cn.Provider = "Microsoft.Jet.OLEDB.4.0 "
cn.ConnectionString = "Data Source="&aa&";" & _
"Extended Properties=Excel 8.0;"
cn.Open
'打开MDB.
connstr="DBQ="+server.MapPath("data.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set oConn=server.CreateObject("ADODB.CONNECTION")
oConn.open connstr

'读取数据.
set rsRead=server.CreateObject("ADODB.Recordset")
rsRead.Open "select * from [Sheet1$]",cn,1,3
do until rsRead.EOF
'写入数据库.
oConn.Execute("Insert into users(userid,password,sex)Values('"& rsRead.Fields("userid")&"','" &rsRead.Fields("password") & "','"& rsRead.Fields("sex")&"')" )
rsRead.MoveNext
loop
%>
2 回复
#2
tianyu1232008-05-16 18:09
在写入数据时,先转换一下数据类型(把字段数据类型都设置为文本型)
oConn.Execute("Insert into users(userid,password,sex)Values('"& cstr(rsRead.Fields("userid"))&"','" &cstr(rsRead.Fields("password")) & "','"& cstr(rsRead.Fields("sex")&"'))" )
#3
zhangjianghan2008-05-17 10:03
tianyu123你好  ,先按照你说的把字段数据类型都改为文本型,然后按照你的代码改,但还是不行,这样的如:小明123,222小明,ggg123, 234hhh, ggg ,小明,都能写进数据库,但纯数字如 242323 还是没法写进数据库,再帮忙看看。
1