我正在使用sql server 2008 我使用.Addnew
插入数据我有这样的代码
strSQL = "SELECT * FROM table"
rs.CursorType = 2
rs.LockType = 3
rs.Open strSQL, adoCon
rs.AddNew
rs.fields("pid") = pid
rs.fields("name") = name
rs.update
rs.requery
response.write rs.fields("GUID")
rs.close
我没有收到错误 - 我没有打印
我在经典的asp中做,没有存储过程,没什么特别的 guid列不是关键!它有一个默认值newid(),而值在db中我就是无法得到它
我做错了什么?
答案 0 :(得分:1)
将SELECT @@IDENTITY
添加到SQL语句以检索最后插入的标识:
Dim rs , cmd
Set rs = server.createobject("ADODB.Recordset")
Set cmd = server.createobject("ADODB.Command")
cmd.ActiveConnection = GetConnectionString()
cmd.CommandType = adCmdText
cmd.CommandText = "INSERT into Table (pid, name) values (1, 'the name') SELECT @@IDENTITY"
rs.CursorLocation = adUseClient
rs.Open cmd, , adOpenForwardOnly, adLockReadOnly
response.write "Last GUID: " + rs(0)
答案 1 :(得分:0)
本文解释了使用示例代码获取标识值的方法。如果您在此之后需要更多帮助,请告知我们