0

新しいテーブルが作成され、パッケージが作成され、このパッケージの 1 人のユーザーに実行アクセスが付与されました。これらのタスクのロールバック スクリプトを作成する必要がありますか?

  • テーブルがドロップされると、トリガーがドロップされます。私は正しいですか?

  • パッケージがドロップされると、実行権は自動的にドロップされます。私は正しいですか?

4

1 に答える 1

1
  1. はい、トリガーは常にテーブルまたはビュー用である必要があります。したがって、テーブル (場合によってはビュー) を削除すると、そのオブジェクトのすべてのトリガーも自動的に削除されます。*

  2. はい、オブジェクトに対する特権は常にあります。オブジェクト (パッケージなど) を削除すると、そのオブジェクトに対するすべての特権も失われます。

その後CREATE、同じ名前の新しいオブジェクトを作成した場合、古いトリガーと権限が魔法のように再表示されることはありません。手動で追加する必要があります。

または、パッケージの場合はCREATE OR REPLACE、元のパッケージに対する権限が残ります。同様に、ALTERテーブルの場合、トリガーは影響を受けません。

* Oracle 11g では、デフォルトで削除されたテーブルはごみ箱に移動されます。テーブルにトリガーがあった場合、それらもごみ箱に移動されます。

于 2013-01-30T05:42:43.297 に答える