文章作者 : test [ fengjf@novasprint.com ] Web URL : http://
上载日期 : 2000-12-12
在ACCESS数据库里面插入新记录,怎样得到新记录的AUTONUMBER, 也许你的回答很简单,搜索最大的AUTONUMBER不就可以了吗?但是当你插入记录之后, 搜索新autonumber之前,有别人又插入新记录,怎么办呢?
解决办法 :
为了防止这种情况的出现, 要使用 cflock cftransaction 了.
如下例, 锁住进程, 直到完成查询.
<cflock name="#CreateUUID()#" timeout="20">
<cftransaction>
<cfquery datasource="myDS" name="myQ">
INSERT INTO Users(fName,lName,city)
VALUES('#form.fName#','#form.lName#','#form.city#')
</cfquery>
<cfquery datasource="myDS" name="getLastID">
SELECT MAX(userID) as lastID
FROM Users
</cfquery>
</cftransaction>
</cflock>
|