PostgreSQL: возможно ли предоставить пользовательское имя для PRIMARY KEY или UNIQUE?

Когда я пишу:

 CREATE TABLE accounts (

     username varchar(64) PRIMARY KEY,

Я получаю первичный ключ с именем:

accounts_pkey

Можно ли назначить свое собственное имя, например "account_primary_key"?

Та же история о UNIQUE,

Я не смог найти его в документации PostgreSQL.

Заранее спасибо.

1 ответ

Решение

Трюк это CONSTRAINT участие в column_constraint раздел CREATE TABLE, Пример:

> create table x(xx text constraint xxxx primary key);
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "xxxx" for table "x"
CREATE TABLE

Это работает для всех видов ограничений, в том числе PRIMARY KEY а также UNIQUE,

Смотрите документацию CREATE TABLE для деталей.

Другие вопросы по тегам