いいえ、できません。 :new
および:old
は疑似レコードであり、ローカル変数に割り当てることができる実際のレコードではありません。テーブルがオブジェクトタイプに基づいている場合は、:new
および:old
その場合、他のオブジェクトと同じように渡すことができる特定のオブジェクトタイプの実際のインスタンスになります。ただし、トリガーを記述しやすくするためだけに、オブジェクトの観点からテーブルを定義する価値があるとは考えられません。
もちろん、データディクショナリ(all_tab_columns
など)のクエリなどを実行して、必要なトリガーコードを自動的に生成するPL/SQLパッケージを作成することもできます。 テーブル内の列のリストを取得するには)動的SQLを使用します。作成する必要のあるトリガーの数によっては、同様のコードを大量に作成して維持するよりも簡単な場合があります。