USE Database
GO
CREATE PROCEDURE FillTable
@Id nvarchar(50),
@ColumnNameArray nvarchar(4000),
@ColumnValueArray nvarchar(4000)
AS
INSERT INTO Table(@ColumnNameArray)
VALUES (@ColumnValueArray)
GO
これは、ストアド プロシージャで必要な機能です。しかし、私はエラーが発生します
Invalid column name '@zoneNameArray'.
それで、回避策は何ですか?
どうすればこれを機能させることができますか?
EDIT 1: SOユーザーが言ったように、このように使用してみました。
select @sql_Str='
INSERT INTO Table('+@ColumnNameArray+')
VALUES ('+@ColumnValueArray+')'
しかし、私はまだエラーがあります。ColumnNameArray
うまくいきます。しかし、ColumnValueArray
私はまだそれを正しく理解できません。
ColumnValueArray
と の両方strings
で構成されint
ます。例:ColumnValueArray = "12,'abc','dddd',45,'2333'"
これは、フロント エンド (C#) からストアド プロシージャのパラメーターに渡すものです。