MySQL トリガー内に複数の if ステートメントがある場合、最善のアプローチは何ですか?
現在、私のSQLは次のようになっています。
IF NOT (NEW.status <=> OLD.status) THEN
{my sql}
ELSEIF NOT (NEW.actual <=> OLD.actual) THEN
{my sql}
END IF
一見すると、これはうまくいくようです。ただし、複数の (else)if ステートメントが true の場合、最初のステートメントのみが実行されることに気付きました (たとえば、PHP のように)。
必ずしもelseifではなく、複数のifを使用して、複数のステートメントが実行されるようにするにはどうすればよいですか? 同じアクションで複数のトリガーを作成することはできません。少なくとも phpMyAdmin はそれを示しています。複数の if を 1 つのトリガーに入れると、エラーが発生します。