gpt4 book ai didi

sql - INSERT INTO 存储过程的输出

转载 作者:行者123 更新时间:2023-12-04 23:31:40 26 4
gpt4 key购买 nike

我正在编写一个存储过程,我首先在表中插入一个新行。然后,另一个查询需要此查询生成的 ID。是否可以使用 OUTPUT 访问预先生成的 ID?

这是我到目前为止所做的,这几乎是一个没有用的猜测

ALTER PROCEDURE [dbo].[addApp]

@Name varchar(50)
, @logoUrl varchar(150)
, @siteUrl varchar(150)
, @userId int
, @canvasWidth int
, @canvasHeight int

AS
DECLARE @tempId INT
SET @tempid = INSERT INTO AppInfo (name, logoUrl, userId)
OUTPUT inserted.id
VALUES(@Name, @logoUrl, @userId);
INSERT INTO CanvasApps (id, siteUrl, canvasWidth, canvasHeight)
OUTPUT inserted.id
VALUES(@tempid, @siteUrl, @logoUrl, @userId);

最佳答案

您甚至可以在单个语句中执行此操作:

ALTER PROCEDURE [dbo].[addApp] 

@Name VARCHAR(50)
, @logoUrl VARCHAR(150)
, @siteUrl VARCHAR(150)
, @userId INT
, @canvasWidth INT
, @canvasHeight INT

AS BEGIN

INSERT INTO dbo.AppInfo (name, logoUrl, userId)
OUTPUT Inserted.ID, @siteUrl, @canvasWidth , @canvasHeight
INTO dbo.CanvasApps (id, siteUrl, canvasWidth, canvasHeight)
VALUES (@Name, @logoUrl, @userId)

END

关于sql - INSERT INTO 存储过程的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16147067/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com