怎样取得刚插入一条记录的ID?

wtiancai 2004-08-03 08:57:51
插入一条记录,然后再取得这条记录的ID,ID是自增的
...全文
128 点赞 收藏 13
写回复
13 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
aspczlover 2004-08-03
sql = "set nocount on;insert into table ;set nocount off;select@@IDENTITY as sysid"
回复
QCB181 2004-08-03
如 yangyanli(乌托邦主·蛤蟆) 所说
回复
jervis82 2004-08-03
同意楼上,其实查找就可以找到一大堆这样的问题。很老的话题,大家都特别活跃。
回复
yangyanli 2004-08-03
rs.addnew
rs("")=""
rs.update
id=rs("id")
rs.close
回复
甘泉123 2004-08-03
插入马上取出来,这个时间差太小了吧~~
回复
ycted 2004-08-03
select IDENT_CURRENT('表名') 指定表最后一次插入的ID号(不管那个seesion产生的)
select @@IDENTITY 当前seesion在所有范围内,任何表产生的最后一个ID号
select SCOPE_IDENTITY() 当前seesion在当前范围内,任何表产生的最后一个ID
回复
wtiancai 2004-08-03
那要是插入的内容相同的话,还是不能取得准确的ID
回复
rainlong 2004-08-03
支持 ycted(长城万里今犹在,不见当年秦始皇!)
回复
colinliu 2004-08-03
select top 1 id from 表名 order by id desc
回复
ycted 2004-08-03
下面是个例子,先插数据,在检索最新的ID
SQL = "SET NOCOUNT ON insert into Sys_Reg(Name,Pathid,Publish) Values('"&sys_name&"',"®_id&","&Publish&") SELECT @@IDENTITY AS NewID"
Dim NewID
Set Rs = conn_system.execute(SQL)
NewID = Rs.Fields("NewID").value
rs.close
set rs=nothing
回复
wtiancai 2004-08-03
这样应该不行吧
那假如多个用户同时执行插入的步骤,那取得的ID就不是所想要的值了
回复
huagou 2004-08-03
select top 1 id from 表名
回复
colinliu 2004-08-03
select max(id) from 表名。。。
回复
相关推荐
发帖
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
帖子事件
创建了帖子
2004-08-03 08:57
社区公告
暂无公告