Sql server 2008 insert select语句后如何获取主键值
我需要创建一个包含许多步骤的SQL脚本 首先,我需要将数据插入到父表中 如何获取主键值列表 下面是一个我正在尝试执行的示例 MyParentTable MyParentID PK col1, col2, 可乐 -将值插入父表Sql server 2008 insert select语句后如何获取主键值,sql-server-2008,Sql Server 2008,我需要创建一个包含许多步骤的SQL脚本 首先,我需要将数据插入到父表中 如何获取主键值列表 下面是一个我正在尝试执行的示例 MyParentTable MyParentID PK col1, col2, 可乐 -将值插入父表 insert into MyParentTable(col1,col2,col3) select SDATA1,SDATA2,SDATA3 from ExampleTables 我想得到我的新作品列表 怎么做 重要注释:考虑MyPARTABLE可以包含数据。 insert
insert into MyParentTable(col1,col2,col3)
select SDATA1,SDATA2,SDATA3
from ExampleTables
我想得到我的新作品列表
怎么做
重要注释:考虑MyPARTABLE可以包含数据。
insert into dbo.MyParentTable(col1,col2,col3)
output inserted.identity_column_name
select SDATA1,SDATA2,SDATA3
from dbo.ExampleTables;
如果涉及外键,则可能必须使用@table变量进行临时保留
DECLARE @t TABLE(id INT);
insert into dbo.MyParentTable(col1,col2,col3)
output inserted.identity_column_name INTO @t
select SDATA1,SDATA2,SDATA3
from dbo.ExampleTables;
SELECT id FROM @t;
如果涉及外键,则可能必须使用@table变量进行临时保留
DECLARE @t TABLE(id INT);
insert into dbo.MyParentTable(col1,col2,col3)
output inserted.identity_column_name INTO @t
select SDATA1,SDATA2,SDATA3
from dbo.ExampleTables;
SELECT id FROM @t;
我将使用它需要SQL Server 2005:
DECLARE @Orders TABLE
(
order_nbr INT PRIMARY KEY,
tname VARCHAR(25),
prod_type INT
);
DECLARE @OrderNumbers TABLE (order_nbr INT PRIMARY KEY);
INSERT INTO @Orders (order_nbr, tname, prod_type)
OUTPUT inserted.order_nbr INTO @OrderNumbers
SELECT 1,'', '1'
UNION ALL SELECT 2,'', '1'
UNION ALL SELECT 3,'', '2';
SELECT * FROM @OrderNumbers;
我将使用它需要SQL Server 2005:
DECLARE @Orders TABLE
(
order_nbr INT PRIMARY KEY,
tname VARCHAR(25),
prod_type INT
);
DECLARE @OrderNumbers TABLE (order_nbr INT PRIMARY KEY);
INSERT INTO @Orders (order_nbr, tname, prod_type)
OUTPUT inserted.order_nbr INTO @OrderNumbers
SELECT 1,'', '1'
UNION ALL SELECT 2,'', '1'
UNION ALL SELECT 3,'', '2';
SELECT * FROM @OrderNumbers;
@Bogdan Sahlan,over子句链接应该是Output子句link@Jean-弗朗索瓦:我相信第一个是亚伦。非常感谢你们两个you@BogdanSahlean,over子句链接应该是Output子句link@Jean-弗朗索瓦:我相信第一个是亚伦。非常感谢你们两位