【发布时间】:2018-06-18 16:22:27
【问题描述】:
我正在尝试使用 ASP Classic 为我的数据库中的表设置新值。我收到此错误:
ADODB.Recordset 错误 '800a0cc1'
在与请求对应的集合中找不到项目 名称或序数。
/Unirme.asp, línea 61 (rs3("IdFichas") = i)
我不知道为什么会这样,因为该列确实存在于表中并且我传递给数据库的值是一个 int。
这是我的 ASP 代码中出现错误的部分:
Set rs3 = server.CreateObject("ADODB.RecordSet")
SQL3 = "SELECT * FROM FichasTablero WHERE 0"
con.BeginTrans
rs2.OPEN SQL2,con,2,3
rs3.OPEN SQL2,con,2,3
rs2.AddNew
rs3.AddNew
rs2("IdPartida") = IdPartida
rs2("IdJugador") = IdJugador
rs2("Comidas_El") = 0
rs2("Comidas_A_El") = 0
dim i
i = 0
Response.Write(i & "-")
For x = 1 To 2
For y = 1 To 8
i = i+1
Response.Write(i & "-")
rs3("IdPartida") = IdPartida
rs3("IdFichas") = i
rs3("IdPosicion") = x&y
rs3("EstadoInicial") = 1
rs3.Update
Next
Next
For x = 7 To 8
For y = 1 To 8
i = i+1
Response.Write(i & "-")
rs3("IdPartida") = IdPartida
rs3("IdFichas") = i
rs3("IdPosicion") = x&y
rs3("EstadoInicial") = 1
rs3.Update
Next
Next
rs2.Update
con.CommitTrans
还有这个BD
编辑:
我想用 IdFicha 填充表格 Fichastablero。这是放置棋盘的筹码。
http://i.stack.imgur.com/bI3nQ.png
http://i.stack.imgur.com/o7qRZ.png
这一定是白色芯片的结果: http://i.stack.imgur.com/SEjmu.png
对不起,这是我的第一个 .asp 任务
【问题讨论】:
-
看起来你的逻辑是错误的。你能解释一下为什么你在循环内有
.Update,而在循环外的顶部有.AddNew吗?脚本完成后 rs3 记录集的期望状态是什么? -
我想用 IdFicha 填充表格 Fichastablero。就是放棋盘的筹码。 ////// i.stack.imgur.com/bI3nQ.png ////// i.stack.imgur.com/o7qRZ.png
-
这一定是结果:i.stack.imgur.com/SEjmu.png
-
您不能在自动增量字段中输入值。只需删除这两行,值应该是自动填充的,这就是自动增量字段的全部意义。
-
我认为
rs3.OPEN SQL2,con,2,3应该是rs3.OPEN SQL3,con,2,3。您显示的sql语句是SQL3..
标签: mysql asp-classic