On 01/15/2011 01:24 PM, Itagaki Takahiro wrote:
On Sun, Jan 16, 2011 at 02:29, Andrew Dunstan<and...@dunslane.net>  wrote:
"textarray". This option would require that the foreign table have exactly
one field, of type text[], and would compose all the field strings read from
the file for each record into the array (however many there are).

   CREATE FOREIGN TABLE arr_text (
        t text[]
   )  SERVER file_server
   OPTIONS (format 'csv', filename '/path/to/ragged.csv', textarray 'true');
FOREIGN TABLE has stable definitions, so there are some issues
that doesn't exist in COPY command:
- when the type of the last column is not a text[]
- when the last column is changed by ALTER FOREIGN TABLE ADD/DROP COLUMN


I intended that this would be checked for validity at runtime, in BeginCopy(). If the table doesn't match the requirement an error would be raised. I don't think it's a big problem.

BTW, those options could be specified in column options rather than table
options. But we don't have column option syntax in the current proposal.

   CREATE FOREIGN TABLE arr_text (
        i integer OPTION (column 1), -- column position in csv file
        t text[]  OPTION (column 'all the rest'),
        d date    OPTION (column 2)
   )  SERVER file_server
   OPTIONS (format 'csv', filename '/path/to/ragged.csv');


Well, ok, but is there any proposal on the table to do that?

cheers

andrew



--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to