Re: CREATE TABLE AS ... - Mailing list pgsql-admin

From Artur Pietruk
Subject Re: CREATE TABLE AS ...
Date
Msg-id 20020723144032.GB4493@yoda.plukwa.net
Whole thread Raw
In response to CREATE TABLE AS ...  (Raphael Bauduin <raphael@be.easynet.net>)
Responses Re: CREATE TABLE AS ...  (Raphael Bauduin <raphael.bauduin@be.easynet.net>)
List pgsql-admin
On Tue, Jul 23, 2002 at 03:48:07PM +0200, Raphael Bauduin wrote:
> Hi,

    Hello,

> In a data model change, I wanted to use the "create table as select"
> feature. However, I want that table to have a primary key defined, and
> thus a field defined as NOT NULL. I didn't find a way to add a NOT NULL
> constraint on a column of an existing table. If there isn't, what's the
> best way to go? A COPY?

    Yes, it looks that you cannot add NOT NULL constraint. But check if
this could work for you:

== 8< ===
ALTER TABLE your_table ADD CONSTRAINT my_constr1 CHECK (your_column IS NOT NULL UNIQUE);
ALTER TABLE your_table ADD CONSTRAINT my_constr2 UNIQUE (your_column);
== 8< ===

    It is not marked as "Primary Key", but it does the same job: checks
that column is UNIQUE and NOT NULL.

    Best regards,
--
--- Artur Pietruk, arturp@plukwa.net

pgsql-admin by date:

Previous
From: Raphael Bauduin
Date:
Subject: CREATE TABLE AS ...
Next
From: Bruno Wolff III
Date:
Subject: Re: CREATE TABLE AS ...