Is is possible to get new values for Id (IDENTITY) before inserting data in a table?(在向表中插入数据之前,是否可以获取 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) 的新值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在向表中插入数据之前,是否可以获取 Id (IDENTITY) 的新值?
- C# 中多线程网络服务器的模式 2022-01-01
- MoreLinq maxBy vs LINQ max + where 2022-01-01
- C#MongoDB使用Builders查找派生对象 2022-09-04
- Web Api 中的 Swagger .netcore 3.1,使用 swagger UI 设置日期时间格式 2022-01-01
- WebMatrix WebSecurity PasswordSalt 2022-01-01
- 带有服务/守护程序应用程序的 Microsoft Graph CSharp SDK 和 OneDrive for Business - 配额方面返回 null 2022-01-01
- 输入按键事件处理程序 2022-01-01
- 如何用自己压缩一个 IEnumerable 2022-01-01
- 良好实践:如何重用 .csproj 和 .sln 文件来为 CI 创建 2022-01-01
- 在哪里可以找到使用中的C#/XML文档注释的好例子? 2022-01-01