こんにちは私はサイズのn列の動的なレポートテーブルを作成する大規模なストアドプロシージャを書いています、最初の6は定数です残りはいくつかの引数をプロシージャに渡される必要な列を持つテーブルを作成します。ストアドプロシージャの列のTSQLの動的追加
私が午前問題は、私は上記のコードのALTER TABLE文で@columnnameでこれに構文エラーを取得しています、次のTSQL
DECLARE @columnname VARCHAR(50)
SET @columnname = 'on_' + @description
IF NOT EXISTS(SELECT * FROM syscolumns WHERE id = OBJECT_ID('reports')
AND NAME = @columnname)
BEGIN
ALTER TABLE reports ADD @columnname VARCHAR(50) NULL
END
です。
これは初めてのことですが、これを行うための最良の方法であるかどうか、または必要な動的テーブルを生成するためのTSQLのより良い方法があるかどうかはわかりません。