Подтвердить что ты не робот

Как получить имя уникального ограничения в postgresql?

Мне нужно удалить уникальное ограничение из таблицы postgresql, но я не дал ему имя в схеме. Кто-нибудь знает, как получить имя такого ограничения или как его удалить?

4b9b3361

Ответ 1

Это что-то вроде (для одиночного столбца):

tableName_columnName_key

Чтобы получить имя константы write (в psql):

\d tableName

или используйте pg_constraint системный каталог:

SELECT conname
FROM pg_constraint
WHERE conrelid =
    (SELECT oid 
    FROM pg_class
    WHERE relname LIKE 'tableName');

Также вы можете получить его из pgAdmin в дереве объектов.

Ответ 2

SELECT conname
FROM pg_constraint
WHERE conrelid = 'mytable'::regclass::oid