今天上午11点开始测试页面如下代码错误:
insql="insert into tg_shenqing(sq_from,sq_xmid,sq_hyid,sq_hyname,sq_qq,sq_email,sq_tel,sq_bmzyid,sq_suid,sq_beizhu,addtime,ip,sq_sh,sq_expertID,sq_expertName) values(2,'"&schid&"','"&meid&"','"&realname &"','"&qq&"','"&email&"','"&mobile&"','"&dpid&"','"&suid&"','"&beizhu&"','"&now()&"','"&getIP()&"',2,13,'桑老师')"
rconn.execute(insql)
set newidrs=rconn.execute("Select SCOPE_IDENTITY()") '获取新ID
newid=newidrs(0) 'newsid为你表中的id
newidrs.close
怎么都获取不到刚插入的ID
自己才疏学浅,就只能上网查资料,各种资料有说用select @@IDENTITY有说最好不要分开写写在一起如:
insql="insert into tg_shenqing(sq_from,sq_xmid,sq_hyid,sq_hyname,sq_qq,sq_email,sq_tel,sq_bmzyid,sq_suid,sq_beizhu,addtime,ip,sq_sh,sq_expertID,sq_expertName) values(2,'"&schid&"','"&meid&"','"&realname &"','"&qq&"','"&email&"','"&mobile&"','"&dpid&"','"&suid&"','"&beizhu&"','"&now()&"','"&getIP()&"',2,13,'桑老师');Select SCOPE_IDENTITY()"
等等。
但是我一一尝试,都没有获取到最新ID,newid一直为空。本来也可以用max(sq_id)来获取的,但是由于其他页面有用这个获取的,而且max(sq_id)还有安全风险。
我只能自己慢慢实验,实验过程不再赘述。最后原因是因为我上面打开了一个记录集没有关闭导致的:
set temp = rconn.execute("select top 1 sq_id from tg_shenqing "&where)