Jeff Boes wrote:
> Let's say I have a table of keywords, with a SERIAL primary key.
>
> CREATE TABLE keywords (
> key_id SERIAL PRIMARY KEY,
> key_text TEXT
> );
>
> Now I would like to initialize this table with a COPY statement, but
> without supplying values for the primary key. In other words, how can I
> use COPY to perform the same function as
>
> INSERT INTO keywords (keyword_text) VALUES ('foo');
> INSERT INTO keywords (keyword_text) VALUES ('bar');
> ...
>
> I have tried
>
> COPY keywords FROM stdin USING DELIMITERS '|';
> |foo
> |bar
> ...
>
> and also
>
> 0|foo
> 0|bar
>
> and even
>
> \N|foo
> \N|bar
>
> I even tried creating a view on keywords that has only keyword_text, and
> copying into THAT--no luck. Then I wrote a rule to replace inserts on the
> view with inserts on the table, but apparently COPY doesn't trigger INSERT
> rules. Grumble...
>
>
>
If you just want a line-number for the records you could always on UN*X
do "nl file > newfile".
Best regards
Per-Olof Pettersson