sql >> データベース >  >> RDS >> Oracle

SQL トリガー エラー - 無効なトリガー

    show errors を使用できます compile with warnings を見た後 、または user_errors をクエリします 表示して後で問題を確認してください。

    明らかなことの 1 つは、old の前にプレフィックスを付けていないことです。 コロンで参照:

    CREATE または REPLACE TRIGGER BeforeUpdateReport BEFORE UPDATE ON REPORT FOR EACH ROW Begin INSERT INTO reportUpdate Values(:old.ID,sysdate); END;/  

    insert でターゲット テーブル フィールドを指定することもお勧めします。 ステートメント:

     INSERT INTO reportUpdate (report_id, updatedate) Values(:old.ID,sysdate);   

    しかし、あなたは update_date を持っています テーブル作成スクリプトで number(32) として定義されています 、意味がありません。 @realspirituals が指摘したように、次のようにする必要があります:

    CREATE TABLE reportUpdate (report_id number, updatedate date);  


    1. インデックスクエリによる低速検索LIKE%MYSQL

    2. MicrosoftAccessのSalesforceデータへのリンク

    3. 2つの列に基づいて重複を削除し、別の列の最小値を持つ行を保持します

    4. MySQLでprintステートメントをシミュレートするにはどうすればよいですか?