Re: Best way to use indexes for partial match at - Mailing list pgsql-general

From Scott Marlowe
Subject Re: Best way to use indexes for partial match at
Date
Msg-id 1131575523.3554.53.camel@state.g2switchworks.com
Whole thread Raw
In response to Re: Best way to use indexes for partial match at beginning  (Jaime Casanova <systemguards@gmail.com>)
List pgsql-general
On Wed, 2005-11-09 at 16:23, Jaime Casanova wrote:
> On 11/9/05, Andrus <eetasoft@online.ee> wrote:
> > >> CREATE TABLE foo ( bar CHAR(10)  PRIMARY KEY);
> > >>
> > >> Cluster locale is non-C. Database encoding is UTF-8. Postgres vers is 8.1
> >
> > >Do this instead:
> >
> > >CREATE TABLE foo ( bar CHAR(10) NOT NULL );
> > >CREATE UNIQUE INDEX foo_bar ON foo(bar char_pattern_ops);
> >
> > Martijn,
> >
> > Thank you. I have CHAR columns and need a primary key also. So I tried the
> > code
> >
> > CREATE TABLE foo ( bar CHAR(10) NOT NULL );
> > CREATE UNIQUE INDEX foo_bar ON foo(bar bpchar_pattern_ops);
> > ALTER TABLE foo ADD PRIMARY KEY (bar);
> >
> > I found that adding primary key creates another index.
> >
> > How to create primary key without duplicate index on bar column ?
> >
> > Andrus.
> >
> >
>
> you can't.
> postgresql implements primary keys creating unique indexes and not
> null constraints on the pk columns.

But, of course, you CAN delete that other index now that it's redundant.

pgsql-general by date:

Previous
From: Jaime Casanova
Date:
Subject: Re: Best way to use indexes for partial match at beginning
Next
From: Andreas
Date:
Subject: Re: Schemas shown in ODBC