请教一个数据库的问题,如果,我在数据库里的id是自增长的

flower2000 2003-09-29 10:42:30
如果,我在数据库里的id是自增长的,我怎么知道我insert的时候这次的id是多少呢?
...全文
24 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
flower2000 2003-09-29
  • 打赏
  • 举报
回复
成功了,谢谢ALong_Yue() 、xinyu_1980(心雨) 、gaofeng2000(襄阳游子)、seesea125(雨天) 、ALong_Yue() ( ) 、 shmyfree(我心依旧) 、 luochen(罗晨) 、 qimini(循序渐进) 、 ttyp(愿赌服输) !
:)
ttyp 2003-09-29
  • 打赏
  • 举报
回复
@@IDENTITY
返回最后插入的标识值。

语法
@@IDENTITY

返回类型
numeric

注释
在一条 INSERT、SELECT INTO 或大容量复制语句完成后,@@IDENTITY 中包含此语句产生的最后的标识值。若此语句没有影响任何有标识列的表,则 @@IDENTITY 返回 NULL。若插入了多个行,则会产生多个标识值,@@IDENTITY 返回最后产生的标识值。如果此语句激发一个或多个执行产生标识值的插入操作的触发器,则语句执行后立即调用 @@IDENTITY 将返回由触发器产生的最后的标识值。若 INSERT 或 SELECT INTO 语句失败或大容量复制失败,或事务被回滚,则 @@IDENTITY 值不会还原为以前的设置。

在返回插入到表的 @@IDENTITY 列的最后一个值方面,@@IDENTITY、SCOPE_IDENTITY 和 IDENT_CURRENT 函数类似。

@@IDENTITY 和 SCOPE_IDENTITY 将返回在当前会话的所有表中生成的最后一个标识值。但是,SCOPE_IDENTITY 只在当前作用域内返回值,而 @@IDENTITY 不限于特定的作用域。

IDENT_CURRENT 不受作用域和会话的限制,而受限于指定的表。IDENT_CURRENT 返回任何会话和任何作用域中为特定表生成的标识值。有关更多信息,请参见 IDENT_CURRENT。

示例
下面的示例向带有标识列的表中插入一行,并用 @@IDENTITY 显示在新行中使用的标识值。

INSERT INTO jobs (job_desc,min_lvl,max_lvl)
VALUES ('Accountant',12,125)
SELECT @@IDENTITY AS 'Identity'

flower2000 2003-09-29
  • 打赏
  • 举报
回复
xinyu_1980(心雨),luochen(罗晨),command.CommandText="select @@IDENTITY";不用指定哪个表么?
qimini 2003-09-29
  • 打赏
  • 举报
回复
+1的方法是不可取的
luochen 2003-09-29
  • 打赏
  • 举报
回复
command.CommandText="select @@IDENTITY";
decimal Objectid=(decimal)command.ExecuteScalar();
shmyfree 2003-09-29
  • 打赏
  • 举报
回复
update Table1 set a='a',b='b' where id in(select max(id) from Table1)
Table1是你要更新的表
flower2000 2003-09-29
  • 打赏
  • 举报
回复
谢谢大家,我先试试!
:)
flower2000 2003-09-29
  • 打赏
  • 举报
回复
我是想知道这次insert进去的时候id是多少,然后再进行update操作啊。
得先找出id :(
ALong_Yue 2003-09-29
  • 打赏
  • 举报
回复
刚才看错了。应该是
SELECT @@IDENTITY
seesea125 2003-09-29
  • 打赏
  • 举报
回复
sql
插入前先
select top 1 id from a where....order by id desc;
这样选出最后一个id,然后+1
极客行天下 2003-09-29
  • 打赏
  • 举报
回复
先查出最大值,再加1,不就行了.
xinyu_1980 2003-09-29
  • 打赏
  • 举报
回复
SELECT @@IDENTITY
ALong_Yue 2003-09-29
  • 打赏
  • 举报
回复
id 不用再 insert 时设置,数据库会自动控制的。

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧