Re: COPY FROM - force a value
От | Alvaro Herrera |
---|---|
Тема | Re: COPY FROM - force a value |
Дата | |
Msg-id | 20070208192149.GY24069@alvh.no-ip.org обсуждение исходный текст |
Ответ на | COPY FROM - force a value ("Demel, Jeff" <Jeff.Demel@JavelinDirect.com>) |
Список | pgsql-sql |
Demel, Jeff wrote: > Is there a way to force a value when you're doing a COPY FROM, importing > a file into a table? > > Here's my query as it is now: > > COPY filetable (value1, value2, value3, value4, forcevalue1, > forcevalue2) > FROM 'C:\\InsertFiles\\thisfile.txt' > WITH DELIMITER AS ' ' > ; > > The file only contains data for values 1 through 4. I'd like to insert > values for the last two fields. This is what I had in mind, which > doesn't work: > > COPY filetable (value1, value2, value3, value4, forcevalue1, > forcevalue2) > FROM 'C:\\InsertFiles\\thisfile.txt' > WITH DELIMITER AS ' ', > forcevalue1 = 1, > forcevalue2 = 'this value' > ; I'd try setting a DEFAULT for those two columns using ALTER TABLE, then the COPY FROM call excluding those columns, then removing the DEFAULT. If you do it in a transaction block, no other transaction can be molested by the default values, though they will be blocked of the table during that transaction. -- Alvaro Herrera http://www.CommandPrompt.com/ The PostgreSQL Company - Command Prompt, Inc.
В списке pgsql-sql по дате отправления: