whileループで動的テーブルを更新したい。ここでストアドプロシージャのwhileループでテーブルを更新するにはどうすればよいですか?
は私のコードです:
While (@j<[email protected]_getRowCount)
Begin
Set @firstcolumn = (Select SplitFirst_tblAR from @result_AR Where rownumber = @j) //String//
Set @secondcolumn = (Select EMail_tblAR from @result_AR Where rownumber = @j) //String//
Set @thirdcolumn = (Select SplitFirst_tblKul from @result_AR Where rownumber = @j) //String//
Set @fourthcolumn = (Select EMail_tblKul from @result_AR Where rownumber = @j) //String//
insert into @test Values(@tmp_ID, @firstcolumn,@secondcolumn,@thirdcolumn,@fourthcolumn)
if ((@firstcolumn = @thirdcolumn) AND (@secondcolumn != @fourthcolumn) AND (@firstcolumn != ''))
begin
Set @q_updateTable = 'Update '+ quotename(@tablename) +' Set '[email protected]+' = ''' + @fourthcolumn + ''' Where ID = ' + @tmp_ID + ''
Exec sp_executesql @q_updateTable
end
SET @j = @j+1
End
マイresult_ARテーブル:
私はエラーがここにある知っている:
ID = '+ @tmp_ID + ''
私は '+ @ ColumnNameに+' = '' '+ @secondcolumn + ''' '
コードが正しく動作
、としてこのWhere句を変更します。
なぜ私のwhere句にIDを設定できないのですか?私は整数としてID値を取得しています。 エラーは「クエリがエラーで完了しました」です。 ありがとうございます。
のinsted?あなたはそれを追加できますか? – rbr94
'@tmp_ID 'のデータ型とは何ですか? –
なぜこれを行うにはループしたいですか? –