Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
主キーとして使用されるシーケンスから値を取得するためにいくつかのトリガーを使用する Oracle 10 DB を使用しています。これらのトリガーの 1 つが無効になっていますが、テーブル内のレコードが有効な主キーで正常に挿入されているため、まだ起動しているようです。
そんなことがあるものか?この「挿入前」トリガーが無効になっているにもかかわらず、まだ機能しているのはなぜですか?
トリガーは、挿入ステートメントがPK値を提供しない場合(PKがnull)にのみ、シーケンスを呼び出してPK値を取得すると思います。挿入を行うアプリケーションは、おそらくシーケンスを呼び出し、PKの値を提供します。
PK値がnullのレコードをテーブルに挿入することで、自分でテストできるかもしれません。エラーが発生した場合、トリガーは無効になります。