PostGISの古い壊れたバージョンがインストールされたデータベースがあります。データベース内のすべての関数を簡単に削除したいと思います(それらはすべてPostGISからのものです)。これを行う簡単な方法はありますか?大きなDROP FUNCTION
ステートメントを作成できるので、関数名のリストを単純に抽出するだけでもかまいません。
SELECT 'DROP FUNCTION ' || ns.nspname || '.' || proname
|| '(' || oidvectortypes(proargtypes) || ');'
FROM pg_proc INNER JOIN pg_namespace ns ON (pg_proc.pronamespace = ns.oid)
WHERE ns.nspname = 'my_messed_up_schema' order by proname;
postgis.sql
イネーブラーインストールスクリプト があったのと同じように、uninstall_postgis.sql
アンインストールスクリプトもあります。
psql -d [yourdatabase] -f /path/to/uninstall_postgis.sql
警告:ジオメトリ/地理列とデータが消えるのを確認する準備をしてください!