为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:win11
【CPU】:intel i7
【问题描述】*:存储过程中在INSERT(单行记录插入)定义有自增列的表后调用SCOPE_IDENTITY()函数得到新增的记录的自增列的值赋给一个变量,得到的变量值为null,通过ident_current()函数能看到自增列的当前值是有变化的,请问是什么原因造成的?是不是SCOPE_IDENTITY()在存储过程中不起作用?试过不在存储过程中调用是能返回自增列值的
不行的话 就使用序列吧,
CREATE SEQUENCE SEQ_FUT INCREMENT BY 10 START WITH 1 CYCLE CACHE 10 ORDER;
--获取序列的当前值,执行如下SQL命令
select SEQ_FUT.CURRVAL;
--获取序列的下一个值,执行如下SQL命令
select SEQ_FUT.nextval;
试一下GLOBAL_IDENTITY();
可以正常获取,方便发下你的语句看下么
