Thread: COPY isn't working right for me

COPY isn't working right for me

From
"Jeff S."
Date:
I have a tab delimited file that I'm trying to import
into an empty table.

I've set the table up as follows:

create table member (
member_id serial not null,
fname varchar(25) not null,
lname varchar(25) not null,
member_since date not null,
Primary Key (member_id)
);

My member.txt file looks like this:

Joe    Smith    2000/01/14
Frank    Jones    2000/06/21
Mike    Davis    2000/09/24

Here's the copy command I use:

COPY member FROM '/tmp/member.txt';

But I'm getting the following error:

ERROR:  copy: line 1, pg_atoi: error in "Joe": can't
parse "Joe"

I'm assuming this has to do with the member_id with
type serial.  How do I import into this without having
to add the OID's to each of the rows in the text file?



__________________________________________________
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35 
a year!  http://personal.mail.yahoo.com/


Re: COPY isn't working right for me

From
Peter Eisentraut
Date:
Jeff S. writes:

> create table member (
> member_id serial not null,
> fname varchar(25) not null,
> lname varchar(25) not null,
> member_since date not null,
> Primary Key (member_id)
> );

> My member.txt file looks like this:
>
> Joe    Smith    2000/01/14
> Frank    Jones    2000/06/21
> Mike    Davis    2000/09/24
>
> Here's the copy command I use:
>
> COPY member FROM '/tmp/member.txt';
>
> But I'm getting the following error:
> ERROR:  copy: line 1, pg_atoi: error in "Joe": can't
> parse "Joe"
>
> I'm assuming this has to do with the member_id with
> type serial.  How do I import into this without having
> to add the OID's to each of the rows in the text file?

You can't, using COPY.  You'll have to preprocess your file, either into
INSERT statements, are prepend your own id's.

-- 
Peter Eisentraut      peter_e@gmx.net       http://yi.org/peter-e/