Asp classic 如何从此ADODB.Recordset获取插入ID?
我试图避免在我的web应用程序中使用直接SQL查询。我环顾四周,得出结论,ADOAsp classic 如何从此ADODB.Recordset获取插入ID?,asp-classic,ado,Asp Classic,Ado,我试图避免在我的web应用程序中使用直接SQL查询。我环顾四周,得出结论,ADORecordsets将是这项工作的最佳或至少最安全的工具。我需要将记录插入数据库表中。不幸的是,我不知道如何获取刚刚插入的记录的标识值。这是我现在得到的一个缩减: <% dim insertID, rs set rs = Server.CreateObject("ADODB.Recordset") rs.Open "my_table_name", conn, adOpenForwardOnly, adLockO
Recordset
s将是这项工作的最佳或至少最安全的工具。我需要将记录插入数据库表中。不幸的是,我不知道如何获取刚刚插入的记录的标识值。这是我现在得到的一个缩减:
<%
dim insertID, rs
set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "my_table_name", conn, adOpenForwardOnly, adLockOptimistic
rs.AddNew()
Call m_map_values_to_rs(rs)
rs.Update()
insertID = rs("id")
rs.Close()
rs = Nothing
%>
感谢Dee的回答。这非常有帮助。用示例代码解释了获取标识值的方法
相关的代码片段是:
<%
fakeValue = 5
set conn = CreateObject("ADODB.Connection")
conn.open "<conn string>"
sql = "INSERT someTable(IntColumn) values(" & fakeValue & ")" & _
VBCrLf & " SELECT @@IDENTITY"
set rs = conn.execute(sql)
response.write "New ID was " & rs(0)
rs.close: set rs = nothing
conn.close: set conn = nothing
%>
谢谢,我已经看过/浏览了那篇文章,但显然我错过了最后一部分的相关性。之后返回的字段值出现了问题。这就是为什么代码应该放在注释中而不是链接到外部网站的原因。你能删除那个URL并使用@Mladen Mihajlovic发布的那个吗?该url现在会使启用javascript的浏览器崩溃,并出现一个无限循环的警报框。感谢更新-这是有价值的信息旧线程,但rs(“id”)是一个字段对象。您应该能够获得rs(“id”).值
<%
fakeValue = 5
set conn = CreateObject("ADODB.Connection")
conn.open "<conn string>"
sql = "INSERT someTable(IntColumn) values(" & fakeValue & ")" & _
VBCrLf & " SELECT @@IDENTITY"
set rs = conn.execute(sql)
response.write "New ID was " & rs(0)
rs.close: set rs = nothing
conn.close: set conn = nothing
%>