Postgresql数据库注释删除
1.删除表注释:
select
n.nspname
,relname as tabname
,obj_description(relfilenode,'pg_class') as comment
,concat_ws('','COMMENT ON TABLE "',nspname,'"."',relname,'" is '''';')
from pg_class c
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
where relkind = 'r'
and obj_description(relfilenode,'pg_class') is not null;
2.删除字段注释:
SELECT
nspname
,b.table_name
,a.attname
,col_description(a.attrelid,a.attnum) as comment
,concat_ws('','COMMENT ON COLUMN ',nspname,'.',b.table_name,'.',a.attname,' is '''';')
FROM pg_catalog.pg_attribute a,
(SELECT c.oid,c.relname as table_name,n.nspname
FROM pg_catalog.pg_class c LEFT JOIN pg_catalog.pg_namespace n ON n.oid = c.relnamespace
WHERE c.relkind = 'r') b
WHERE a.attrelid = b.oid
AND a.attnum > 0
AND NOT a.attisdropped
and col_description(a.attrelid,a.attnum) is not null
ORDER BY b.table_name,a.attnum;
把需要删除的表的最后一列语句复制出来执行就可以删除。