1

我询问替代或类似查询informix以执行以下操作:

INSERT INTO days (depcode,studycode,batchnum) values (1,2,3);SELECT SCOPE_IDENTITY();

我想要一个查询返回 SCOPE_IDENTITY()插入期间的语句

4

2 回答 2

2

我知道在 t-sql 你有这个OUTPUT语句吗?[KEY]您的主键的列名在哪里,并且@OUT_KEY是您需要声明的变量

INSERT INTO days
(
  depcode,
  studycode,
  batchnum
)
OUTPUT INSERTED.[KEY] INTO @OUT_KEY
VALUES
(
  1,2,3
)

编辑

对于informix,您可以使用

SELECT DBINFO( 'sqlca.sqlerrd1' )
FROM systables
WHERE tabid = 1;

假设您的 pk 列是 SERIAL

于 2011-07-27T11:05:19.013 回答
0

Select @@Identity我在插入行后使用这个 sql 语句。它给了我最后插入的行的 ID。我正在使用访问数据库。我不知道它是否适用于您的数据库。

于 2011-07-27T11:03:44.483 回答