14.15 DROP FUNCTION文
DROP FUNCTION文は、データベースからスタンドアロン・ファンクションを削除します。
ノート:
この文を使用してパッケージの一部であるファンクションを削除しないでください。かわりに、 DROP PACKAGE文を使用してパッケージ全体を削除するか、またはOR REPLACE句を指定したCREATE PACKAGE文を使用して、そのファンクションを含めずにパッケージを再定義してください。
ここでのトピック
前提条件
ファンクションが自分のスキーマ内にある必要があります。自分のスキーマ内にない場合は、DROP ANY PROCEDUREシステム権限が必要です。
構文
drop_function ::=
セマンティクス
drop_function
IF EXISTS
ファンクションが存在する場合は削除します。このようなファンクションが存在しない場合、文はエラーなしで無視されます。
schema
ファンクションが含まれているスキーマの名前。デフォルト: 自分のスキーマ。
function_name
削除するファンクションの名前。
データベースによって、削除したファンクションに依存するローカル・オブジェクト、または削除したファンクションを起動するローカル・オブジェクトが無効にされます。後でこれらのオブジェクトのいずれかを参照した場合、データベースは、そのオブジェクトを再コンパイルしようとします。削除したファンクションを再作成しないかぎり、エラーが戻されます。
任意の統計タイプがファンクションに関連付けられている場合、FORCE句によって統計タイプの関連付けが解除され、統計タイプを使用して収集したユーザー定義のすべての統計情報が削除されます。
関連項目:
-
ASSOCIATESTATISTICS文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。 -
DISASSOCIATESTATISTICS文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。
例
例14-32 ファンクションの削除
この文は、サンプル・スキーマoe内のファンクションSecondMaxを削除し、SecondMaxに依存していたすべてのオブジェクトを無効にします。
DROP FUNCTION IF EXISTS oe.SecondMax;
SecondMaxがまだスキーマに存在しない場合、この文はエラーなしで無視されます。ファンクションが存在するかどうかに関係なく、出力メッセージが同じであることに注意してください(この場合は「ファンクションが削除されました。」)。
関連項目:
SecondMaxファンクションの作成の詳細は、「例14-15」を参照してください
関連トピック
