ホームページ >データベース >mysql チュートリアル >PostgreSQL 関数のすべてのオーバーロードを自動的に削除するにはどうすればよいですか?
パラメータの知識がない場合の関数の削除
「CREATE OR REPLACE FUNCTION」構文を使用してテキスト ファイル内の関数のコレクションを維持する場合、パラメーターが追加または削除されたときにオーバーロードを手動で追跡して削除するのは面倒になります。このジレンマは、関数を削除するときに各パラメーターの型を正確な順序で指定する必要があるために発生します。
このプロセスを合理化するには、次のクエリを利用して DROP FUNCTION コマンドを自動的に生成することを検討してください。
SELECT 'DROP FUNCTION ' || oid::regprocedure FROM pg_proc WHERE proname = 'my_function_name' AND pg_function_is_visible(oid);
説明:
出力例:
DROP FUNCTION my_function_name(string text, form text, maxlen integer); DROP FUNCTION my_function_name(string text, form text); DROP FUNCTION my_function_name(string text);
結果の DROP FUNCTION コマンドを順番に実行して、パラメーターに関係なく、指定された名前を持つすべての関数を削除できます。カウントまたはタイプ。
追加オプション:
以上がPostgreSQL 関数のすべてのオーバーロードを自動的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。