gpt4 book ai didi

sql-server - 如何使用 SQL Server 中的存储过程在单个查询中插入多行

转载 作者:行者123 更新时间:2023-12-02 03:43:31 25 4
gpt4 key购买 nike

CREATE PROCEDURE Usp_insertgender
(@gendervalues VARCHAR(MAX))
AS
BEGIN
INSERT INTO sparsha.dbo.Genders ([GenderName])
VALUES @gendervalues;
END

我尝试了上述过程,但出现错误

Msg 102, Level 15, State 1, Procedure Usp_insertgender, Line 10
Incorrect syntax near '@gendervalues'.

我将 @gendervalues 值传递为 ('1'),('2')

最佳答案

可能最简单的方法是定义 TVP :

CREATE TYPE myTVPType AS TABLE( v VARCHAR(50));  
GO

CREATE PROCEDURE Usp_insertgender (@gendervalues myTVPType READONLY)
AS
BEGIN
INSERT INTO sparsha.dbo.Genders ([GenderName])
SELECT v
FROM @gendervalues;
END;

如何调用:

DECLARE @tvp AS myTVPType;  

INSERT INTO @TVP (v)
VALUES ('1'),('2');

EXEC Usp_insertgender @TVP;
GO

关于sql-server - 如何使用 SQL Server 中的存储过程在单个查询中插入多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47620116/

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