SQL Serverのこのコードで何が問題になっていますか?列作成後のSQL Serverの更新時に列名が無効
IF NOT EXISTS(SELECT *
FROM sys.columns
WHERE Name = 'OPT_LOCK'
AND object_ID = Object_id('REP_DSGN_SEC_GRP_LNK'))
BEGIN
ALTER TABLE REP_DSGN_SEC_GRP_LNK
ADD OPT_LOCK NUMERIC(10, 0)
UPDATE REP_DSGN_SEC_GRP_LNK
SET OPT_LOCK = 0
ALTER TABLE REP_DSGN_SEC_GRP_LNK
ALTER COLUMN OPT_LOCK NUMERIC(10, 0) NOT NULL
END;
私はこれを実行すると、私が手:
メッセージ207、レベル16、状態1、行3
無効な列名 'OPT_LOCK' を。
更新コマンドです。
ありがとうございました。
EXECが近づいてきました。ありがとう! – feradz
これは私が何年も使ってきたアプローチであり、新しいカラムを追加してデータを入力したいときはいつでも、この厄介な動的SQLルートをとらなければならないと私は常に驚いています... –