gpt4 book ai didi

c# - SQL 服务器 : insert stored procedure with dynamic table name

转载 作者:行者123 更新时间:2023-12-05 05:22:50 25 4
gpt4 key购买 nike

我正在尝试创建一个用于插入新数据的存储过程。基本上我收到关于“声明表变量@表名”的错误。

我试过:

create procedure [dbo].[spInsertProc](@table_name varchar(max))
as
begin
declare @name nvarchar(128);
declare @description nchar(255);
declare @tablename varchar(max);
--declare @tablename as table;

set @tablename = @table_name;

Insert Into @tablename ([name], [description])
Values (@name, @description)
end

另一个问题是这个存储过程安全吗,因为我没有使用查询字符串,对吗?

最佳答案

如下准备动态插入语句:

CREATE procedure [dbo].[spInsertProc](@table_name varchar(max))
as
begin
declare @name varchar(50)='Sandip';
declare @description varchar(50)='SE';

Declare @Query VARCHAR(MAX)
SET @Query='Insert Into '+@table_name+' ([name], [description])
Values (
'''+@name+''',
'''+@description+''')'
EXEC(@Query);
PRINT(@Query);
end

关于c# - SQL 服务器 : insert stored procedure with dynamic table name,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39554224/

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