Muitas vezes criamos uma função para ser executada apenas uma vez. Quando for este o caso, não precisamos cria-la, pois podemos executar o código diratamente. Para o nosso exemplo, supomos que temos uma table mytable e queremos remover todas as constraints desta table que começa com fk_. Basta executar o código abaixo
DO $$DECLARE r record; BEGIN FOR r IN SELECT DISTINCT ON (constraint_name) constraint_name, table_name FROM information_schema.table_constraints ORDER BY constraint_name, table_name LOOP IF (r.table_name=mytable) AND substring(R.constraint_name from 1 for 3)='fk_' THEN EXECUTE 'ALTER TABLE ' || quote_ident(r.table_name)|| ' DROP CONSTRAINT '|| quote_ident(r.constraint_name) || ';'; END IF; END LOOP; END$$;