您的位置:首页 > 数据库

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

2005-01-10 14:58 609 查看
在并发较多的时候这种方法应该是同样可行的,我虽没去做过测试,但你查阅MSDN的ADO中有关ADODB.RecordSet的方法就应该清楚,Set testRs=Server.CreateObject("ADODB.RecordSet") '创建要测试的对象
testRs.Open "[TestTable] ",Conn,1,2 '假定开始已经创建Conn,并且数据库已经连接
这句之后实际已经将数据读取到内存中来了,最后通过AddNew和Update方法写回数据库后,之前打开的数据并未从内存中清除,因为并没有使用Close方法关闭之前打开的数据库,也没有显式地销毁对象,故这种方法在高并发环境下是同样可行的。大家可以去测试下。

下面就MoveLast的方法解释如下(原文摘自ADO的参考手册):
使用 MoveLast 方法将当前记录位置移动到 Recordset 中的最后一个记录。Recordset 对象必须支持书签或向后光标移动;否则调用该方法将产生错误。

注意关键的红色部分的几个字:“当前记录”和“RecordSet”,并非是“数据库的实时记录”,按照上面几位朋友的理解,用一个AdoDB.RecordSet一次性打开数据库后,只要不关闭,就可无限地和数据库的更新保持同步了??这显然是不可能的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: