如何插入一条数据的同时,取出刚插入数据的id

s208ping 2010-03-29 05:58:33
如何插入一条数据的同时,取出刚插入数据的id

注意:该id的类型为uniqueidentifier

int型的我会

谢谢大家
...全文
350 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
Adechen 2010-03-31
  • 打赏
  • 举报
回复
select @@IDENTITY
whb147 2010-03-31
  • 打赏
  • 举报
回复
根据@@identity重新查询一次数据库就可以
select GUID from talbe where id=@@identity
hitlcyu19 2010-03-31
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lzsh0622 的回复:]

insert into 表名 ... select @@identity

返回的结果是new id
[/Quote]
恩 是啊
photoplan 2010-03-31
  • 打赏
  • 举报
回复
除非情况特别,否则这是个伪问题,只有自增列做主键时才有必要取出新 id,你是uniqueidentifier,可以代码里生成GUID,还取它什么?
xupeihuagudulei 2010-03-31
  • 打赏
  • 举报
回复
如果是自动增长的可以用
select @@identity
要是不是的话还真不知道咋搞。
莫非用存储过程 ,
不过效率可能不太好
teita731 2010-03-31
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 sandy945 的回复:]
uniqueidentifier 的话, 可以通过在存储过程内 调用 newID() 函数 获取 guid 并保存,然后新增记录

将保存的 guid 返回即可
[/Quote]

就是这样~
xing020010 2010-03-31
  • 打赏
  • 举报
回复
先用newid()生成一个 然后 插入数据,
liaolian9948 2010-03-31
  • 打赏
  • 举报
回复


"insert into table(column) values(@value);select SCOPE_IDENTITY()";
如果在ado.net取的話。。cmd.ExecuteScalar() 就可以取到值了。。。

austin_luotuo 2010-03-31
  • 打赏
  • 举报
回复
你也考虑一下用触发器啊!
citystreet 2010-03-31
  • 打赏
  • 举报
回复
学习学习~~受用受用~~
Alden 2010-03-29
  • 打赏
  • 举报
回复
uniqueidentifier类型的字段,你可以在C#里创建,然后插入数据.
polarissky 2010-03-29
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zgke 的回复:]

你先在表里增加个字段 你在C#里创建一个GUID 然后写到这个字段里。然后查询这个GUID就可以获取到你想要的ID了。
[/Quote]
我平时都用这种办法
yanzhiyong 2010-03-29
  • 打赏
  • 举报
回复
LS真厉害。。。全说了。。
wuyq11 2010-03-29
  • 打赏
  • 举报
回复
CREATE TABLE Test
(
PKID INT IDENTITY(1,1) PRIMARY KEY ,
Column1 VARCHAR(50),
GUID UNIQUEIDENTIFIER DEFAULT NEWID()
)
INSERT INTO Test (Column1) VALUES ('a')
select @@IDENTITY
SELECT GUID FROM Test Where PKID=@@IDENTITY

SELECT TOP 1 GUID FROM Test ORDER BY 1 DESC
newdigitime 2010-03-29
  • 打赏
  • 举报
回复
sql="insert into table (xx,xxx) values(yy,yyy) ;select @@identity";
阿非 2010-03-29
  • 打赏
  • 举报
回复
uniqueidentifier 的话, 可以通过在存储过程内 调用 newID() 函数 获取 guid 并保存,然后新增记录

将保存的 guid 返回即可
loveyan924 2010-03-29
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 sandy945 的回复:]
SQL code
select SCOPE_IDENTITY()


应使用 SCOPE_IDENTITY() 函数,而不是 @@identity 全局变量

具体原因 可看帮助
[/Quote]


貌似可行。。。。。。。。。。。。
阿非 2010-03-29
  • 打赏
  • 举报
回复
select SCOPE_IDENTITY()


应使用 SCOPE_IDENTITY() 函数,而不是 @@identity 全局变量

具体原因 可看帮助
a124819202 2010-03-29
  • 打赏
  • 举报
回复
uniqueidentifier这个类型的我不会!
yufenghua 2010-03-29
  • 打赏
  • 举报
回复
这个。。。没试过,我觉得实在不行再select一次,不过看来这个办法很不先进 顶楼上
加载更多回复(5)

62,047

社区成员

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

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

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

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