On Thu, 11 Jul 2002, Susan Lane wrote:
> Hi -
>
> I noticed that all of my primary keys are specified as not null and I did
> not specify not null when I built the tables. Does Postgres automatically
> make all primary keys not null? This is a problem for me because I have a
> few tables that have multiple column primary keys where one of the columns
> may be null. Is there any way for me to change the not null specification?
> or is that a requirement for primary keys in Postgres? This was not the
> case in Oracle....which is where I'm trying to port my data from.
At least SQL92, primary keys are not satisifed if any of the values are
null, by my reading:
"A unique constraint is satisfied if and only if no two rows in
a table have the same non-null values in the unique columns. In
addition, if the unique constraint was defined with PRIMARY KEY,
then it requires that none of the values in the specified column or
columns be the null value."
Do you really need this as a primary key as opposed to a unique
constraint?