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

同じテーブルにレコードを挿入するためのINSERTトリガー

    変更は、トリガーしているテーブルを変更する行レベルのトリガーがある場合はいつでも発生します。問題は、Oracleがどのように振る舞うかを知ることができないということです。行を挿入すると、トリガー自体が同じに行を挿入します。 テーブル、およびOracleが混乱します、原因、トリガーが原因でテーブルに挿入されますが、トリガーアクションの対象にもなりますか?

    解決策は3段階のプロセスです。

    1.)挿入されている行を追跡するパッケージをインスタンス化するトリガー前のステートメントレベル。

    2.)前のステップでインスタンス化されたパッケージ変数にその行情報を保存するトリガーの前後の行レベル。

    3.)テーブルに挿入するトリガー後のステートメントレベル、パッケージ変数に保存されているすべての行。

    この例はここにあります:

    http://asktom.oracle.com/pls/asktom/ASKTOM .download_file?p_file =6551198119097816936

    お役に立てば幸いです。



    1. SQLで最上位の親を見つける

    2. OracleのDBTIMEZONE関数

    3. PostgreSQLUUID配列をpsycopg2のリストとして返します

    4. Laravel5のリレーションシップの列でpaginateを使用して「having」を使用する方法