Обсуждение: index naming conventions

Поиск
Список
Период
Сортировка

index naming conventions

От
Joseph Shraibman
Дата:
playpen=# create table jm(
playpen(# jid int NOT NULL,
playpen(# mid int  ,
playpen(# UNIQUE(jid, mid)
playpen(# );
NOTICE:  CREATE TABLE/UNIQUE will create implicit index 'jm_jid_key' for table 'jm'
CREATE

Why isn't the index created called 'jm_jid_mid_key' ?


--
Joseph Shraibman
jks@selectacast.net
Increase signal to noise ratio.  http://www.targabot.com


Re: index naming conventions

От
Tom Lane
Дата:
Joseph Shraibman <jks@selectacast.net> writes:
> playpen=# create table jm(
> playpen(# jid int NOT NULL,
> playpen(# mid int  ,
> playpen(# UNIQUE(jid, mid)
> playpen(# );
> NOTICE:  CREATE TABLE/UNIQUE will create implicit index 'jm_jid_key' for table 'jm'
> CREATE

> Why isn't the index created called 'jm_jid_mid_key' ?

Laziness, mainly.  There's a subroutine in the parser that's responsible
for forming these names and doing truncation if they are too long.  It
only handles three name components (table, field, and "_key" suffix) at
the moment.  Feel free to submit a patch that makes it smarter...

            regards, tom lane