Lists: | pgsql-admin |
---|
From: | "Tommy Cheng" <csckcac(at)gmail(dot)com> |
---|---|
To: | pgsql-admin(at)postgresql(dot)org |
Subject: | turn off auto index for foreign key |
Date: | 2008-06-10 02:48:08 |
Message-ID: | 2267dd9e0806091948k24a46cegcd45e65a5aa632ed@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-admin |
Hi admins,
I would like to turn off the auto index for child table's foreign key. It
is because i want to read the information_schema for table, column, index,
unique and so on after creating the database. How to turn off the auto
behavior? Or Is there a way to distinguish between auto one and user created
index?
Thanks
Tommy Cheng
From: | "Scott Marlowe" <scott(dot)marlowe(at)gmail(dot)com> |
---|---|
To: | "Tommy Cheng" <csckcac(at)gmail(dot)com> |
Cc: | pgsql-admin(at)postgresql(dot)org |
Subject: | Re: turn off auto index for foreign key |
Date: | 2008-06-10 03:50:03 |
Message-ID: | dcc563d10806092050y3f41ef00j95390d335e4d11c0@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-admin |
On Mon, Jun 9, 2008 at 8:48 PM, Tommy Cheng <csckcac(at)gmail(dot)com> wrote:
> Hi admins,
> I would like to turn off the auto index for child table's foreign key. It
> is because i want to read the information_schema for table, column, index,
> unique and so on after creating the database. How to turn off the auto
> behavior? Or Is there a way to distinguish between auto one and user created
> index?
There is no auto index creation for child relationships, only for the
parent (unique index for primary key etc)
From: | "Tommy Cheng" <csckcac(at)gmail(dot)com> |
---|---|
To: | pgsql-admin(at)postgresql(dot)org |
Subject: | Re: turn off auto index for foreign key |
Date: | 2008-06-10 04:17:24 |
Message-ID: | 2267dd9e0806092117sda112dt8ac2f2ba8ed5e66f@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-admin |
you are right. I double checked. So, is there any way to turn off auto index
creation for the parent? (the best is changing postgresql database setting)
I am using postgres (PostgreSQL) 8.1.9 on CentOS 5 x86_64
On Tue, Jun 10, 2008 at 11:50 AM, Scott Marlowe <scott(dot)marlowe(at)gmail(dot)com>
wrote:
> On Mon, Jun 9, 2008 at 8:48 PM, Tommy Cheng <csckcac(at)gmail(dot)com> wrote:
> > Hi admins,
> > I would like to turn off the auto index for child table's foreign key.
> It
> > is because i want to read the information_schema for table, column,
> index,
> > unique and so on after creating the database. How to turn off the auto
> > behavior? Or Is there a way to distinguish between auto one and user
> created
> > index?
>
> There is no auto index creation for child relationships, only for the
> parent (unique index for primary key etc)
>
From: | "Alex Hunsaker" <badalex(at)gmail(dot)com> |
---|---|
To: | "Tommy Cheng" <csckcac(at)gmail(dot)com> |
Cc: | pgsql-admin(at)postgresql(dot)org |
Subject: | Re: turn off auto index for foreign key |
Date: | 2008-06-10 04:58:15 |
Message-ID: | 34d269d40806092158vc3069e7gfd58166dee46aa2c@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-admin |
On Mon, Jun 9, 2008 at 10:17 PM, Tommy Cheng <csckcac(at)gmail(dot)com> wrote:
> you are right. I double checked. So, is there any way to turn off auto index
> creation for the parent? (the best is changing postgresql database setting)
> I am using postgres (PostgreSQL) 8.1.9 on CentOS 5 x86_64
>
Again, there is no auto index creation for foriegn keys. However if
you declared the column unique or its the pkey (ala unique) (As Scott
said) then there will an index.
No you cant turn it off because its how postgres enforces uniqueness
see http://www.postgresql.org/docs/8.1/interactive/index-unique-checks.html
for more
My guess, use the name of the index to try to distinguish. Auto
generated ones will always be in the form:
pkey: <table_name>_pkey(num)
unique: <table_name>_<column_name>_key(num)
From: | "Tommy Cheng" <csckcac(at)gmail(dot)com> |
---|---|
To: | pgsql-admin(at)postgresql(dot)org |
Subject: | Re: turn off auto index for foreign key |
Date: | 2008-06-10 05:16:55 |
Message-ID: | 2267dd9e0806092216n1dabf29ai6e7b82a727eaf5c5@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-admin |
um...Your soln is possible. But if the user created an unique index using
constraint name <table_name>_<column_name>_key5, it will not be able to
distinguish it from other auto index.
On Tue, Jun 10, 2008 at 12:58 PM, Alex Hunsaker <badalex(at)gmail(dot)com> wrote:
> On Mon, Jun 9, 2008 at 10:17 PM, Tommy Cheng <csckcac(at)gmail(dot)com> wrote:
> > you are right. I double checked. So, is there any way to turn off auto
> index
> > creation for the parent? (the best is changing postgresql database
> setting)
> > I am using postgres (PostgreSQL) 8.1.9 on CentOS 5 x86_64
> >
>
> Again, there is no auto index creation for foriegn keys. However if
> you declared the column unique or its the pkey (ala unique) (As Scott
> said) then there will an index.
>
> No you cant turn it off because its how postgres enforces uniqueness
> see
> http://www.postgresql.org/docs/8.1/interactive/index-unique-checks.html
> for more
>
> My guess, use the name of the index to try to distinguish. Auto
> generated ones will always be in the form:
> pkey: <table_name>_pkey(num)
> unique: <table_name>_<column_name>_key(num)
>