INSERT requires SERIAL column? - Mailing list pgsql-sql

From otisg@ivillage.com
Subject INSERT requires SERIAL column?
Date
Msg-id 20020227073856.29477.cpmta@c006.snv.cp.net
Whole thread Raw
Responses Re: INSERT requires SERIAL column?  ("Christopher Kings-Lynne" <chriskl@familyhealth.com.au>)
List pgsql-sql
Hello,

I've got a table with these columns:

user_id      SERIAL       CONSTRAINT pk_user_auth_user_id PRIMARY KEY,
email        VARCHAR(64)    NOT NULL UNIQUE        ,
password     VARCHAR(16)    NOT NULL        ,
status       SMALLINT    NOT NULL DEFAULT 1

But when I tried using the following INSERT statement I got an error about not being able to parse the input.

INSERT INTO user_auth VALUES ('foo@example.com', 'password', 1);

psql:../data/user_auth.dat:13: ERROR:  pg_atoi: error in "foo@example.com": can't parse "foo@example.com"

So this indicates that an integer was expected as the first value.

In order to get it to do what I want I had to use this:

INSERT INTO user_auth VALUES (nextval('user_auth_user_id_seq'), 'foo@example.com', 'password', 1);

Question:
Is this really necessary or am I missing something?
I thought specifying SERIAL columns is not neccessary in INSERT statements.

Thank you,
Otis

_________________________________________________________________
iVillage.com: Solutions for Your Life 
Check out the most exciting women's community on the Web   
http://www.ivillage.com


pgsql-sql by date:

Previous
From: otisg@ivillage.com
Date:
Subject: Err. compiling func. with SET TRANS...
Next
From: "Christopher Kings-Lynne"
Date:
Subject: Re: INSERT requires SERIAL column?