您的位置:首页网页设计ASP实例 → 如何获得刚插入数据库的记录的ID号

如何获得刚插入数据库的记录的ID号

时间:2010/2/5 11:41:00来源:本站整理作者:我要评论(0)

 

如何获得刚插入数据库的记录的ID号:

1.SQL Server
  对于SQL Server 2000来说,它提供了两个全新的函数(IDENT_CURRENT,SCOPE_IDENTITY),并且改进了@@IDENTITY的不足.当你插入新记录后,可以调用函数:
    PRINT IDENT_CURRENT('table') '这将获得新的IDENTITY值,不管数据库中是不是有记录添加(这就避免了@@IDENTITY的连接限制)
    或者:PRINT SCOPE_IDENTITY() '这将获得在当前存储过程,触发器等其他程序创建的最新记录的IDENTITY值.
  而全局变量@@IDENTITY有一个问题,当对一张表执行insert时,如果该表有触发器程序在执行插入操作,然后,接着在另一张表中插入记录,这样返回@@IDENTITY值就是第二张表的IDENTITY值。

在ASP中你可以这样做:
<% 
    set conn = Server.CreateObject("ADODB.Connection")
    conn.open "<conn string>"
    set rs = conn.execute("exec myProc @param1=" & fakeValue)
    response.write "New ID was " & rs(0)
    rs.close: set rs = nothing
    conn.close: set conn = nothing
%>

2.Access
  对于Access,你可以用下面这样的方法:
<% 
    set conn = Server.CreateObject("ADODB.Connection")
    conn.open "<conn string>"
    conn.execute "Insert into someTable(intField) values(" & fakeValue & ")"
    set rs = conn.execute("select MAX(ID) from someTable")
    response.write "New ID was " & rs(0)
    rs.close: set rs = nothing
    conn.close: set conn = nothing
%>
  然而对于多人同时向数据库中添加数据,我们就要利用记录集的adOpenKeyset游标来防止出错。例如下面的例子:
<% 
    set conn = Server.CreateObject("ADODB.Connection")
    conn.open "<conn string>"
    set rs = Server.CreateObject("ADODB.Recordset")
    rs.open "select [intField] from someTable where 1=0", conn, 1, 3
    rs.AddNew
    rs("intField") = fakeValue
    rs.update
    response.write "New ID was " & rs("id")
    rs.close: set rs = nothing
    conn.close: set conn = nothing
%>

 

相关视频

    没有数据

相关阅读 LOL小游戏指尖召唤师测试资格怎么获得 LOL指尖召唤师小游戏预约方lol云顶之弈任务奖励获得方法 lol云顶之弈每日任务奖励一览lol云顶之弈小小英雄怎么获得 lol云顶之弈小小英雄快速获得方法LOL云顶之弈各英雄如何搭配装备 云顶之弈全英雄装备搭配推荐dnf盛夏硬币怎么获得 dnf盛夏硬币获得方法lol电玩币怎么获得 lol电玩币怎么刷逆战长白山真真怎么获得 逆战真真人物获得方法血污夜之仪式蛤蜊在哪里 血污夜之仪式蛤蜊获得方法

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 迅雷新手完全入门手册 asp下面javascript上传图片限制格式大小方法告诉大家网页弹出窗口应用总结ASP常见错误类型大全asp常见错误分析和解决办法

人气排行 总是弹出visual studio 实时调试器 三种解决SQLSERVER存储过程及调用详解Asp获取真实IP地址ASP中连接Mssql的几种方法一个简单好用的UBB编辑器(含代码)如何用Split将字符串转换为数组并获取数组下ASP防止表单重复提交的办法告诉你免费的简单聊天室源代码