Short notation for creating indices ? - Mailing list pgsql-novice

From Andreas
Subject Short notation for creating indices ?
Date
Msg-id 3FFC3DAB.8030403@gmx.net
Whole thread Raw
List pgsql-novice
Hi,

I'm moving from MySQL to Pg.
MySQL lets me create indices like this:

CREATE TABLE t (
  id         INTEGER        NOT NULL,
  numba      INTEGER         NOT NULL,
  txt        VARCHAR(100) NOT NULL,
  anosanumba INTEGER         NOT NULL ,

  PRIMARY KEY (id),
  INDEX (numba),
  UNIQUE (anosanumba)
);

PostgreSQL doesn't like the line :
  INDEX (numba),

Instead I have to use :
  CREATE INDEX idx_t_numba ON t (numba);
outside the CREATE TABLE statement.
And as far as I understand I do have to give an plain INDEX explicitely
a name while Pg makes one up for the UNIQUE.

The point is, that I want to use foreign keys and I figure it helped if
those fk-columns were indexed but PG won't create indices for columns in
fk-constraints automatically.
Am I right ?

Why can we use INDEX the same way as UNIQUE ?
Perhaps even as in
...
  numba   INT4    NOT NULL    INDEX
...




pgsql-novice by date:

Previous
From: Stephan Szabo
Date:
Subject: Re: partial index on varchar-coloumn in 7.4.1
Next
From: Martin Hampl
Date:
Subject: Re: partial index on varchar-coloumn in 7.4.1