Asp classic 如何从此ADODB.Recordset获取插入ID?

Asp 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

我试图避免在我的web应用程序中使用直接SQL查询。我环顾四周,得出结论,ADO
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 
%>