我从一个信息表中取ID放入处理表的一个字段中,但不成功,为什么

来源:百度知道 编辑:UC知道 时间:2024/07/05 00:00:17
Set rsi = Server.CreateObject("ADODB.RecordSet")
'定义rs,为插入表格定义记录集
sqladd="select * FROM "&DataInfoTableName
rsi.Open sqladd, Conn, 1, 3
'使用AddNew和Update插入新记录
rsi.AddNew
rsi("fCateName")=ifCate
rsi("sCateName")=isCate
if iRecDate<>"" then
rsi("RecDate")=iRecDate
end if
rsi("tNr")=itNr
rsi("VolNr")=iVolNr
rsi("Name")=iName
rsi("pages")=ipages
rsi("copies")=icopies
rsi("Afd1")=iAfd1
rsi("Afd2")=iAfd2
rsi("Afd3")=iAfd3
rsi("Afd4")=iAfd4
rsi("Afd5")=iAfd5
rsi("Attfilepath")=iAttfile
rsi("uploader")=iUploader
rsi("uploadtime")=iuploadtime
rsi("Remark")=iRemark
rsi.Update
'把这时的ID值赋给变量
v

addnew的时候并没有生成ID,调用update时数据库生成ID但没有传反映到数据集,可以用select max(ID) as ID from 表名取得最新的ID,在打开rs的参数中有一个游标类型,设成动态游标好像也可以接收到数据库更新,你可以试试,我没试过,也就是用rs.open "SQL",conn,3,3这样的形式打开

必须重新连接数据库才可以。
首先关闭刚刚存储数据的数据表,然后使用ID由大到小打开这个数据表,再检测它的ID.