列のあるテーブルstaff
がありoffice
ます。現在、office
列はNULL値を受け入れません。このテーブルに永続化するアプリケーションにはバグがあり、スタッフにオフィスが割り当てられていない場合、テーブルにNULL値を挿入しようとします。
トリガーを使用してStaff
テーブルへの挿入をインターセプトし、office
値がNULLであるかどうかを確認して、値に置き換えるように求められましたN/A
。
以下はこれまでの私の試みですがerror
、実装しようとしています。これを解決する方法に関するアイデア。
CREATE TRIGGER staffOfficeNullReplacerTrigger BEFORE INSERT ON Staff
FOR EACH ROW BEGIN
IF (NEW.office IS NULL)
INSERT INTO Staff SET office="N/A";
END IF
END;
エラー:
MySQLデータベースエラー:SQL構文にエラーがあります。'INSERT INTO Staff SET office = "N / A"の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。終わり'