Abr*_*ris 3 sql sql-server stored-procedures
我正在编写一个存储过程,我首先在表中插入一个新行.然后,另一个查询需要此查询生成的ID.是否可以使用OUTPUT访问prevoisly生成的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);
Run Code Online (Sandbox Code Playgroud)
您甚至可以在单个声明中执行此操作:
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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6281 次 |
| 最近记录: |