批量刪除表
DO $$
DECLARE
d varchar(128);
BEGIN
FOR d IN select 'drop table '||schemaname||'.'||tablename||';' from pg_tables where schemaname||'.'||tablename like '%public.fc\_o\_%'
loop
EXECUTE d;
END LOOP;
END;
$$
批量修改表
DO $$
DECLARE
d varchar(128);
BEGIN
FOR d IN select 'ALTER TABLE '||schemaname||'.'||tablename|| ' ADD COLUMN IF NOT EXISTS "branch" int8 DEFAULT 1;' from pg_tables where schemaname||'.'||tablename like '%public.fc\_item\_%'
loop
EXECUTE d;
END LOOP;
END;
$$
需要注意的是這裏的表名帶有下劃線,要有轉義字符