问题
When I write:
CREATE TABLE accounts (
username varchar(64) PRIMARY KEY,
I get primary key named:
accounts_pkey
Is it possible to assign my own custom name, for instance "accounts_primary_key"?
Same story about UNIQUE
.
I couldn't find it in PostgreSQL documentation.
Thanks in advance.
回答1:
The trick is the CONSTRAINT
part in the column_constraint
section of CREATE TABLE
. Example:
> create table x(xx text constraint xxxx primary key);
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "xxxx" for table "x"
CREATE TABLE
This works for all kind of constraints, including PRIMARY KEY
and UNIQUE
.
See the docs of CREATE TABLE for details.
来源:https://stackoverflow.com/questions/8674562/postgresql-is-it-possible-to-provide-custom-name-for-primary-key-or-unique