0

@active2 つの更新を行うストアド プロシージャがありますが、パラメーターが と等しい場合にのみ最初の更新を行いたいと考えています'Y'

alter procedure sp_updateThis
@something varchar(5),
@active char(1)
as begin
-- check to see if active and do the update
update myTable set this=@something

-- run this one regardless
update yourTable set that=@something
4

4 に答える 4

4

最後の行を次のように変更してみてください。

if (@active = 'Y')
begin
    update yourTable set that=@something
end
于 2013-03-01T19:48:52.263 に答える
2
alter procedure sp_updateThis
@something varchar(5),
@active char(1)
as begin
-- check to see if active and do the update
if(@active = 'Y')
Begin
update myTable set this=@something
End

-- run this one regardless
update yourTable set that=@something
于 2013-03-01T19:50:35.350 に答える
1

テーブル内のすべての行を本当に更新しようとしている場合:

update myTable set this=@something where @active = 'Y';

それ以外の場合は、おそらくそこに追加の句が必要です...

于 2013-03-01T19:50:44.083 に答える