在向表中插入数据之前,是否可以获取 Id (IDENTITY) 的新值? [英] Is is possible to get new values for Id (IDENTITY) before inserting data in a table?

查看:27
本文介绍了在向表中插入数据之前,是否可以获取 Id (IDENTITY) 的新值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以在向表中插入数据之前获取 Id (IDENTITY) 的新值?

Is is possible to get new values for Id (IDENTITY) before inserting data in a table ?

可以这样写吗:

INSERT INTO Table1
SELECT *GET_NEW_IDENTITY*, Field1, Field2 FROM Table2

我需要 Id 的值,因为我想在 Table1 中插入数据,然后在另一个表中插入数据,该表具有链接到 Table1 的外键(带有 Id)

I need the values of Id because I want to insert data in Table1 and, just after, insert data in another table which has a foreign key linked to Table1 (with Id)

推荐答案

IDENT_CURRENT.返回为指定表或视图生成的最后一个标识值.最后生成的标识值可以用于任何会话和任何范围.

IDENT_CURRENT. Returns the last identity value generated for a specified table or view. The last identity value generated can be for any session and any scope.

SCOPE_IDENTITY.返回插入到同一范围内的标识列中的最后一个标识值.范围是一个模块:存储过程、触发器、函数或批处理.

SCOPE_IDENTITY. Returns the last identity value inserted into an identity column in the same scope. A scope is a module: a stored procedure, trigger, function, or batch.

输出.从受 INSERT、UPDATE、DELETE 或 MERGE 语句影响的每一行返回信息或表达式.[...] OUTPUT 子句可能有助于在 INSERT 或 UPDATE 操作之后检索标识或计算列的值.

OUTPUT. Returns information from, or expressions based on, each row affected by an INSERT, UPDATE, DELETE, or MERGE statement. [...] The OUTPUT clause may be useful to retrieve the value of identity or computed columns after an INSERT or UPDATE operation.

这篇关于在向表中插入数据之前,是否可以获取 Id (IDENTITY) 的新值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆