复制CSV数据,同时填充串行列

尼尔

我已经创建了我的第一个postgres表,并且试图找出如何将.csv文件复制到表中,同时在第1列(ID)中生成一个序列号,该序列号从1开始并向上计数(即1、2、3等)。我一直在使用命令:

COPY sales_table FROM '/home/perl_experiments/xmlcsv.txt' (DELIMITER('|'));

这试图复制csv的内容,但似乎是将数据从.csv的第一列放入表的第一列。我已将表的第一列指定为bigserial,并且我假设此列将自动填充,而csv的内容将绕过列1并从列2开始填充表。错过了至关重要的一步。任何人都可以对我错过的脚步有所了解吗?这是我创建的表的摘要:

Column  Type   Not Null  Default        
ID      bigint NOT NULL  nextval('"sales_table_Entry        Id_seq"'::regclass)     [pk]        

ProdNo  bigint  

Title   character varying   

url     character varying   

Price   integer     
圭多

您可以指定各个列来填充COPY命令:

COPY table_name [ ( column [, ...] ) ]
    FROM { 'filename' | STDIN }
    [ [ WITH ] ( option [, ...] ) ]

http://www.postgresql.org/docs/9.1/static/sql-copy.html

因此,请在中显式指定CSV列COPY,而忽略bigserials列。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章