标题:[求助]Insert 语句调试出错
取消只看楼主
zhy589
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2007-7-2
结帖率:100%
 问题点数:0 回复次数:5 
[求助]Insert 语句调试出错
sql = "insert into user(xm,tel,sj,addr) values('"&rs(0)&"','"&rs(1)&"','"&rs(2)&"','"&rs(3)&"')"  

[此贴子已经被作者于2007-8-9 10:29:00编辑过]


搜索更多相关主题的帖子: Insert 语句 调试 
2007-08-09 10:27
zhy589
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2007-7-2
得分:0 
回复:(madpbpl)sql =
谢谢相助


改成你这样出现的错误是:
错误类型:
ADODB.Recordset (0x800A0BB9)
参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。
/test/excelTosql1.asp, 第 55 行


第55行代码如下:请问怎么改啊?
rssql.Open sql,conn,1,3

[此贴子已经被作者于2007-8-9 14:12:28编辑过]

2007-08-09 14:10
zhy589
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2007-7-2
得分:0 
回复:这是我的原代码请大家帮我调试一下吧

'sql 连接驱动
dim conn,connstr,time1,time2,db
db="data/wx.mdb"
time1=timer
Server.ScriptTimeOut = 100
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(""&db&"")
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"
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")
' sql="select * from user"
sql = sql = "insert into [user] (xm,tel,sj,addr) values ('"&rs(0)&"','"&rs(1)&"','"&rs(2)&"','"&rs(3)&"')"
rssql.Open sql,conn,2,2
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
if rs(4)<>"" then
rssql(4)=rs(3)
end if

rssql.Update
Rs.MoveNext
Loop
rssql.close
set rssql=nothing
end if
response.Write "<script language=javascript>alert('资料导入成功!\n共有"&cc&"条数据导入');history.go(-1)</script>"

[此贴子已经被作者于2007-8-9 14:25:49编辑过]

2007-08-09 14:24
zhy589
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2007-7-2
得分:0 
回复:(madpbpl)sql =
我把程序的下部分改成这样了INSERT语句也改了出现错误如下:
错误类型:
ADODB.Recordset (0x800A0E78)
对象关闭时,不允许操作。
/test/excelTosql1.asp, 第 56 行

56行是 rssql.AddNew

请指教:
改程序如下
Do While Not rs.EOF
'列出表内信息
response.write ""&rs(0)&"-"&rs(1)&"-"&rs(2)&"-"&rs(3)&""
cc=cc+1
response.write"<br>"
'添加到数据库只能感
set rssql=server.CreateObject("adodb.recordset")
' sql="select * from user"
sql = "insert into [user] (xm,tel,sj,addr) values ('"&rs(0)&"',"&rs(1)&",'"&rs(2)&"','"&rs(3)&"')"
rssql.Open sql,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
if rs(4)<>"" then
rssql(4)=rs(3)
end if

rssql.Update
rssql.close
set rssql=nothing
Rs.MoveNext
Loop

end if
response.Write "<script language=javascript>alert('资料导入成功!\n共有"&cc&"条数据导入');history.go(-1)</script>"
2007-08-09 15:47
zhy589
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2007-7-2
得分:0 
回复:(阳光白雪)[QUOTE]Do While Not rs.EOF \'列...
谢谢斑竹 非常感谢我调试出来了!好激动啊!
2007-08-09 16:27
zhy589
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2007-7-2
得分:0 
回复:(阳光白雪)[QUOTE]Do While Not rs.EOF \'列...

斑竹你好:

我参考了你给我的代码,在本机测试可以啊 但是上传到FTP就不行了显示不出来那网页

无法显示网页


您要访问的网页有问题,无法显示。

--------------------------------------------------------------------------------

请尝试以下操作:

打开 www.kaite-service.com 主页,然后查找指向您感兴趣信息的链接。
单击刷新按钮,或以后再试。

单击搜索,寻找 Internet 上的信息。
也可查看相关站点列表。


HTTP 500 - 内部服务器错误
Internet Explorer


这是为什么啊

2007-08-17 09:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-161403-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.602725 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved