Re: COPY table_name (single_column) FROM 'unknown.txt' DELIMITER E'\n'

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Isaac Morland <isaac(dot)morland(at)gmail(dot)com>
Cc: Chapman Flack <chap(at)anastigmatix(dot)net>, Joel Jacobson <joel(at)compiler(dot)org>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: COPY table_name (single_column) FROM 'unknown.txt' DELIMITER E'\n'
Date: 2021-05-05 17:58:49
Message-ID: CAKFQuwYLOjHMvjREJUZ7dZ5EQGEOKnxJOYoPuKR6qqN09w9FcQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, May 5, 2021 at 10:34 AM Isaac Morland <isaac(dot)morland(at)gmail(dot)com>
wrote:

> On Wed, 5 May 2021 at 13:23, Chapman Flack <chap(at)anastigmatix(dot)net> wrote:
>
>> On 05/05/21 13:02, David G. Johnston wrote:
>> > Why not just allow: "DELIMITER NONE" to be valid syntax meaning exactly
>> > what it says and does exactly what you desire?
>>
>> What would it mean? That you get one column, multiple rows of text
>> corresponding to "lines" delimited by something, or that you get one
>> column, one row of text for the entire content of the file?
>>
>
> It means no column delimiter. In other words, there is no character
> which marks the end of a data value, so the entire line is a single data
> value.
>
>
This. When dealing with COPY it's expected that each line becomes its own
row. On the server you can do pg_read_file() if you need the entire file
to be considered a single value. psql (\I and variables) is a bit more
hackey, but I'd rather see that improved directly anyway if the goal is to
try and make getting the "whole document" easier - copy isn't the right API
for that IMO.

David J.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2021-05-05 18:18:04 v14 mechanical code beautification patches
Previous Message Jeff Davis 2021-05-05 17:56:56 Re: MaxOffsetNumber for Table AMs