私はこのコードをよりスマートにするために多くのことを試みました...ご覧のとおり...常に同じです...1つの変数は6つの異なる値を持つことができます...これにより、他の値が書き込まれる列が決まります...レコードセットはまだ存在します 「更新...」を行います それ以外の場合は「挿入...」を行います
動的SQLを実行しようとしました...しかし、うまくいきません...
「CASE...」コードを実行しようとしましたが、うまくいきません...
このコードは機能します:
-- How many roads must a man walk down...
IF @DatenFeld = 'weaNr'
IF NOT EXISTS(SELECT * FROM @StaDa_Table WHERE DatenSatz=@DatenSatz)
INSERT INTO @StaDa_Table (DatenSatz, weaNr ) VALUES (@DatenSatz, Convert(nvarchar(20),@DatenWert))
ELSE
UPDATE @StaDa_Table SET weaNr = Convert(nvarchar(20),@DatenWert) WHERE DatenSatz=@DatenSatz
ELSE
IF @DatenFeld = 'weaTyp'
IF NOT EXISTS(SELECT * FROM @StaDa_Table WHERE DatenSatz=@DatenSatz)
INSERT INTO @StaDa_Table (DatenSatz, weaTyp ) VALUES (@DatenSatz, Convert(nvarchar(20),@DatenWert))
ELSE
UPDATE @StaDa_Table SET weaTyp = Convert(nvarchar(20),@DatenWert) WHERE DatenSatz=@DatenSatz
ELSE
IF @DatenFeld = 'nennP_W'
IF NOT EXISTS(SELECT * FROM @StaDa_Table WHERE DatenSatz=@DatenSatz)
INSERT INTO @StaDa_Table (DatenSatz, nennP_W ) VALUES (@DatenSatz, Convert(int,@DatenWert))
ELSE
UPDATE @StaDa_Table SET nennP_W = Convert(int,@DatenWert) WHERE DatenSatz=@DatenSatz
ELSE
IF @DatenFeld = 'refErt_Wh'
IF NOT EXISTS(SELECT * FROM @StaDa_Table WHERE DatenSatz=@DatenSatz)
INSERT INTO @StaDa_Table (DatenSatz, refErt_Wh ) VALUES (@DatenSatz, Convert(bigint,@DatenWert))
ELSE
UPDATE @StaDa_Table SET refErt_Wh = Convert(bigint,@DatenWert) WHERE DatenSatz=@DatenSatz
ELSE
IF @DatenFeld = 'inbetrieb'
IF NOT EXISTS(SELECT * FROM @StaDa_Table WHERE DatenSatz=@DatenSatz)
INSERT INTO @StaDa_Table (DatenSatz, inbetrieb ) VALUES (@DatenSatz, Convert(datetime,@DatenWert))
ELSE
UPDATE @StaDa_Table SET inbetrieb = Convert(datetime,@DatenWert) WHERE DatenSatz=@DatenSatz
ELSE
IF @DatenFeld = 'uw'
IF NOT EXISTS(SELECT * FROM @StaDa_Table WHERE DatenSatz=@DatenSatz)
INSERT INTO @StaDa_Table (DatenSatz, uw ) VALUES (@DatenSatz, Convert(nvarchar(50),@DatenWert))
ELSE
UPDATE @StaDa_Table SET uw = Convert(nvarchar(50),@DatenWert) WHERE DatenSatz=@DatenSatz
...だから、tsql に精通している人がこのコードをより賢くするのを手伝ってくれるでしょうか?