当前位置: 首页 > 图文教程 > 网络编程 > ASP > 在MsSql、Access两种数据库中插入记录后马上得到自动编号的ID值

ASP
用ASP编写图片计数器
最简洁的多重查询的解决方案
披着羊皮的大野狼 ASP中Session技巧
简单入门ASP变量
简单入门ASP子程序
几款Access 在线管理工具(ASP)比较
ASP实例教程:Form集合
ASP实例教程:FileSystemObject对象
关于ASP Recordset 分页出现负数解决方法及建议
sdcms添加在线提交功能
如何配置IIS既可以运行ASP又可以运行PHP
Asp获取当日文章并支持前一天后一天的方法
ASP动态include文件
用ASP开发网页需要牢记的注意事项
利用ASP发送和接收XML数据的处理方法
Session对象失效的客户端解决方法
通过数组给您的文件排序
一次性下载远程页面上的所有内容
ASP生成不重复随机数字的另类思路
asp模板引擎终结者(WEB开发之ASP模式)

ASP 中的 在MsSql、Access两种数据库中插入记录后马上得到自动编号的ID值


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 79 ::
收藏到网摘: n/a

本编文章将要介绍重点解释如何在Ms Sql Server中更新或添加一条记录后立即得到其标识列的值,这个值在ACCESS就是我们熟知的自动编号的
ID值,好了,闲话不多说,代码我也不多写,只写关键些,相信各位高手一看就明白,呵呵。后面也附带了在ACCESS中获取的方法,虽然在ACCESS
中获取自动编号的文章网上虽然很多,但放在此做为一个总结吧。
Set testRs=Server.CreateObject("ADODB.RecordSet") '创建要测试的对象
testRs.Open "[TestTable] ",Conn,1,2 '假定开始已经创建Conn,并且数据库已经连接
testRs.AddNew
testRs(”ColName1”)=”ColName1”
testRs(”ColName2”)=”ColName2”
......
testRs(”ColNameN”)=”ColNameN”
testRs.Update '调用Update方法立即将内存中数据写入数据库中,下面这句是关键的
testRs.MoveLast '将记录移动最后一条
ID=testRs(”ID”) '这样就可以立即得到刚才这个新记录的自动编号了
最后不要忘记关闭对象
testRs.Close:Set testRs= Nothing
呵呵,以上方法我已经在Windows 2000 Server Sp4 + Ms SQL Server + Asp/VB/DELPHI等都测试过,都是可行的。因为本篇文章是针对有些基础的人阅读的,故上面的代码不可直接运行,如各位对上面的代码有何疑问,请与我联系QQ:115269,或者上我的网站来娱乐娱乐:http://www.772.cn/
下面转贴出如何如何在Access数据库中插入记录后马上得到自动编号的ID值
首先须保证获得记录集的方式支持bookmark属性,如1,3
插入一条带自动编号字段的记录后,获取该记录的bookmark属性值
temp = rs.bookmark
然后
rs.bookmark = temp
试试!!
Response.write rs("ID").
顺便解释下BookMark是一个什么属性,因为现在网上有文章对此的解释有点歧义:)
返回唯一标识 Recordset 对象中当前记录的书签(我们在ACCESS添加一个新记录后就可通过这个属性返回他的自动编号了),或者将 Recordset 对象的当前记录设置为由有效书签所标识的记录。
设置和返回值
设置或返回计算有效书签的变体型表达式。
说明
使用 Bookmark 属性可保存当前记录的位置并随时返回到该记录。书签只能在支持书签功能的 Recordset 对象中使用。
打开 Recordset 对象时,其每个记录都有唯一的书签。要保存当前记录的书签,请将 Bookmark 属性的值赋给一个变量。移动到其他记录后要快速返回到该记录,请将该 Recordset 对象的 Bookmark 属性设置为该变量的值。
用户可能无法查看书签的值,也同样无法对书签直接进行比较(指向同一记录的两个书签的值可能不同)。
如果使用 Clone 方法创建 Recordset 的一个副本,则原始的和复制的 Recordset 对象 Bookmark 属性设置相同并可以替换使用。但是,无法替换使用不同 Recordset 对象的书签,即使这些书签是通过同一数据源或命令创建的。
远程数据服务用法 在客户端 (ADOR) Recordset 对象上使用时,Bookmark 属性始终有效。