Как удалить все связи в postgresql

Как можно через pgadmin 4 удалить все связи у всех таблиц в схемах? Желательно, чтобы Primary Key не затронуло.

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Aziz Umarov

Сделайте как тут

b=# create table a (a int primary key, b int unique);
CREATE TABLE
b=# create table b (a int references a(a), b int references a(b));
CREATE TABLE
b=# do
$$
declare r record;
begin
for r in (select constraint_name from information_schema.table_constraints where table_schema = 'public' and table_name='b') loop
  raise info '%','dropping '||r.constraint_name;
  execute CONCAT('ALTER TABLE "public"."b" DROP CONSTRAINT '||r.constraint_name);
end loop;
end;
$$
;
INFO:  dropping b_a_fkey
INFO:  dropping b_b_fkey
DO
→ Ссылка