基本的に、Web アプリケーションからのデータでテーブルのレコード (テーブル x) を更新する、データベースに既にあるストアド プロシージャを変更しようとしています。テーブル x を更新した後、そのストアド プロシージャを作成して、テーブル x をチェックし、column_z が null である主キーのそのインスタンスのレコードが他に存在するかどうかを確認したいと考えています。基本的に、次のようなもの
ALTER PROCEDURE [cred].[UpdateTablex]
(@field0 int,
@field1 int,
@field2 int,
@field3, int,
@field4 VARCHAR(100),
@field5 datetime,
@field6 datetime)
AS
UPDATE tablex
SET field4 = @field4,
field6 = @field6
WHERE field1 = @field1 AND
field2 = @field2 AND
field3 = @field3 AND
field0 = @field0 AND
field5 = @field5;
この残りの部分は、私のアイデアの疑似コードと、それが開発される可能性があると私が考えていた方法です。
IF ((SELECT COUNT(field0) FROM tablex WHERE field6 is null AND field2 = @field2
AND field3 = @field3 AND field5 = @field5) equals 0)
exec cred.Demobilize(@field0, @field1);
または単純に、その Select ステートメントが field6 がどこでも null であることを示す結果を返した場合、何もしません。明らかに、Select ステートメントが何も返さない場合は、別のストアド プロシージャを実行したいということです。
これはおそらく単純なものなので、私は特定のタイプの SQL 構文と使用法に慣れていないので、ご容赦ください。これはその 1 つです。
また、このようなトピックについて自分自身をさらに教育するために、誰かが私を適切な方向に向けることができますか?
ありがとうございました。