我想编写一个过程来在相关表中添加带有子记录的多个父记录。这是您要在“客户”表中添加多个“客户”并将“订单”项添加到“ CustomerOrder”表中的事情。
我知道流程如下:
我正在使用表类型参数将记录插入到客户表中,并且客户表具有自动增量ID, 如何将这个自动递增的客户ID传递到“订单”表?
答案 0 :(得分:0)
如何将这个自动递增的客户ID传递到“订单”表?
您可以使用OUTPUT
子句获取插入的ID。
您可以参考以下示例。
CREATE TABLE Customer
(
ID INT IDENTITY,
NAME VARCHAR(100),
ADDRESS VARCHAR(100),
PhoneNo VARCHAR(100)
)
DECLARE @tblInsertdIds TABLE
(
ID INT
)
INSERT INTO Customer
(Name,
Address,
PhoneNo)
OUTPUT INSERTED.ID
INTO @tblInsertdIds(ID)
VALUES ('C1',
'Address 1',
'123123123'),
('c2',
'Address 2',
'34234324')
--Get the newly inserted ids
SELECT *
FROM @tblInsertdIds
您可以在OUTPUT Clause (Transact-SQL)上查看有关OUTPUT
子句的更多详细信息