首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

[ODBC] 插入一条记录时,怎么使用SELECT @@IDENTITY来获取新插入的自增id

2013-11-14 
[ODBC] 插入一条记录时,如何使用SELECT @@IDENTITY来获取新插入的自增id?我要插入的表有一个自增ID,我想在

[ODBC] 插入一条记录时,如何使用SELECT @@IDENTITY来获取新插入的自增id?
我要插入的表有一个自增ID,我想在插入完后获取该ID值
我知道可以通过在插入语句的末尾加上"SELECT @@IDENTITY" 来实现,
但是当执行完SQLExecDirect()函数后,用什么函数获取该ID值呢? 我用SQLNumResultCols()函数获取的列数是0,直接用SQLBindCol()也得不到ID值.

怎么获取?
[解决办法]

引用:
...
我这里问的不是SCOPE_IDENTITY 和 @@IDENTITY的区别,
我只是后来觉得SCOPE_IDENTITY更好.

不知道你是否明白,为何不能把SCOPE_IDENTITY()或@@IDENTITY写在insert语句之后?而必须是重新做一次查询才能获取到自增ID?


1、楼主用C++执行一次insert语句以后,再执行select SCOPE_IDENTITY()语句是可以的,此外建议用@@IDENTITY了
2、楼主在同一个函数里将select SCOPE_IDENTITY()放在insert语句后,再执行函数是出不来,除非作为输出变量才行

热点排行