需要添加一个用户,然后返回其自动编号
以前我用这种办法
- VBScript code
function addUser(strName) '成功返回用户id,否者返回-1 rst.open "tblUser",con,adOpenFowrardOnly,adLockOptimistic,adCmdTable rs.addNew rst("strName")=xxx ; '这里strName为Unique,重复会报错 on error resume next rst.update if err then addUser=-1 else addUser=rst("lngId") end if on error goto 0 end function
但是这需要打开表,可能会降低性能,能否一个adodb.command实现???
例如(可能是错误的)
- VBScript code
cmd.CommandText="INSERT INTO tblUser (lngId,strName) VALUES (?,?)" cmd.parameters.append cmd.createParameter("lngId",adInteger,adParamOutput) cmd.parameters.append cmd.createParameter("strName",adWChar,adParamInput,len(strName),strName) cmd.execute
------解决方案--------------------
最简单的方法,还是直接select @@identity; 得到刚插入记录的自动编号。