gpt4 book ai didi

sql-server - 我如何将最后插入的 PK 计算 varchar(7) 字段作为输出

转载 作者:行者123 更新时间:2023-12-03 17:46:44 24 4
gpt4 key购买 nike

数据链接:

CREATE TABLE [dbo].[Admin_Profile](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Ad_Regid] AS ('R'+right('200'+CONVERT([varchar](10),[ID],(0)),(6))) PERSISTED NOT NULL,
[Ad_Fname] [varchar](25) NULL,
[Ad_Lname] [varchar](25) NULL,

CONSTRAINT [PK_Admin_Profile] PRIMARY KEY CLUSTERED
(
[Ad_Regid] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

SP:

create procedure _insertAdminProfile
(
@Ad_Fname varchar(25),
@Ad_Lname varchar(25),
@Ad_Pwd varchar(7) Out
as

Begin

insert into dbo.Admin_Profile (Ad_Fname,Ad_Lname) values (@Ad_Fname,@Ad_Lname);

SELECT ISNULL(MAX(@Ad_Pwd), 0) + 1 FROM dbo.Admin_Profile

end

我尝试了很多方法来获取 inserted.Ad_Regid 的输出...没有获取,我也尝试了 select @Ad_Regid = SCOPE_IDENTITY()

谢谢...

最佳答案

您需要使用OUTPUT 子句:

DECLARE @OutputValues TABLE (ID INT, RegID VARCHAR(7))

INSERT INTO dbo.Admin_Profile (Ad_Fname, Ad_Lname)
OUTPUT Inserted.Id, Inserted.Ad_RegId INTO @OutputValues(ID, RegID)
VALUES(@Ad_Fname, @Ad_Lname);

插入语句运行后,您将在表变量 @OutputValues 中插入所有 ID 和相应的 Ad_RegId 值。

SELECT ID, RegID FROM @OutputValues

阅读更多关于 OUTPUT clause on SQL Server Books Online 的信息

关于sql-server - 我如何将最后插入的 PK 计算 varchar(7) 字段作为输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17482441/

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