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

ASP
ASP语法高亮类代码
ASP实现长文章分页
上一篇,下一篇过程代码
插件下载┊垃圾引用防御补丁(每小时自动换KEY,支持静态页面)
完美解决PJ的Cookies保存时限问题!可选择记录登陆时长!
ASP,PHP与.NET伪造HTTP-REFERER方法及防止伪造REFERER方法探讨
用VB生成DLL封装ASP连接数据库的代码
利用ActiveX控件InetCtls.Inet在ASP中实现新闻小偷
验证码识别技术
另类扩展名同样执行ASP
用JAVASCRIPT帮我写个计数器
用ASP读取XML文件的具体方法与示例
很有用的学习ASP常用到的代码
VBScript中变量作用域
可以查询百度排名的asp源码放送了
可以查询google排名的asp源码
用asp实现文件浏览、上传、下载的程序
Ajax+ASP和Flash+ASP数据读取取方法有些相似的实现方法
ASP与数据库,有用的代码(转贴,摘贴)
将首页转成静态html页的asp文件

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 237 ::
收藏到网摘: 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 属性始终有效。