sql - MS SQL Server 最后插入的 ID

标签 sql sql-server

在我的数据库中,所有表都使用通用的序列表(ID_Table)。

TABLE_ID 有两个字段(Common_ID、Table_Name)。

如果我在表中插入任何记录,我必须首先在 Table_ID(自动增量,Table_name)中插入一条记录,然后在我的其他表中使用该自动增量值。

例如,我想插入具有ID(Common_ID)、Product_Name、Product_ID(自动增量)字段的Table_Products

我想做这样的事情:

INSERT INTO TABLE_ID (Table_NAME), Values (Table_Products)

获取插入的 ID 并在 Table_Products 中使用它:

INSERT INTO Table_Products (ID, Product_Name, Product_ID(Auto Increment) 
VALUES (ID from TABLE_ID, SomeProduct, Increment)

最佳答案

试试这个 -

DECLARE @ID BIGINT

INSERT INTO dbo.TABLE_ID (Table_NAME) 
SELECT 'Table_Products'

SELECT @ID = SCOPE_IDENTITY()

INSERT INTO dbo.Table_Products (ID, Product_Name)
SELECT @ID, 'SomeProduct'

关于sql - MS SQL Server 最后插入的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16432893/

相关文章:

sql - 执行此查询的最佳方式是什么?也许是联盟

SQL:计算某个值从第一次出现到接下来的五分钟的出现次数,并为下一次出现重复相同的操作

SQL Server - "sys.functions"在哪里?

sql - 在 CTE 中声明变量 SQL Server 2008

mysql - 使用 SQL 管理历史和当前记录

sql - 手动填充 Azure 数据库

sql - 有什么办法可以用范围谓词停止索引搜索?

java - 调用 SQL 查询返回旧值

sql-server - 将 datetimeoffset 转换为 varchar

sql-server - SSIS:ODBC 源版本与此版本的数据流不兼容