On Mon, Apr 7, 2008 at 4:53 PM, Pavel SRB <srb@heckler-koch.cz> wrote:
> hi all
>
> please i have one question. I made table called tab_article with
>
> CREATE TABLE "tab_article" (
> "id" serial NOT NULL PRIMARY KEY,
> "flag" boolean NOT NULL,
> "title" text NOT NULL,
> "journal" integer NOT NULL,
> "doi" varchar(255) NOT NULL,
> "year" integer NOT NULL,
> "volume" integer NOT NULL,
> "issue" integer NOT NULL,
> "pages_start" integer NOT NULL,
> "pages_end" integer NOT NULL,
> "printed" boolean NOT NULL,
> "public" boolean NOT NULL,
> "entry" boolean NOT NULL,
> "filename" integer NOT NULL,
> "language" integer NOT NULL,
> "link" integer NOT NULL,
> "info" varchar(255) NOT NULL
> );
>
> and later another table called tab_journal
>
> CREATE TABLE "tab_journal" (
> "id" serial NOT NULL PRIMARY KEY,
> "flag" boolean NOT NULL,
> "name" text NOT NULL,
> "publisher" integer NOT NULL,
> "issn_print" integer NOT NULL,
> "issn_online" integer NOT NULL,
> "link" integer NOT NULL,
> "date_range" varchar(255) NOT NULL
> );
>
> and i needed to change column journal in tab_article to be set like
> "journal_id" integer NOT NULL REFERENCES "article_journal" ("id")
>
> and i am not able to find the right alter table command.
> thank you very much
You will want to add the NOT NULL as one statement. Then, add the
foreign key constraint as a second statement. There are examples of
how to do each here:
http://www.postgresql.org/docs/8.3/static/sql-altertable.html
Hope that helps.
Sean