2014-02-14 168 views
0

我面临的情况是,我们从不同的客户端获得大量的CSV文件,但总是有一些与目标表所期望的列数和列长度有关的问题。从csv动态创建表

处理频繁更改的CSV文件的最佳方法是什么?我的目标是将这些CSV文件加载到Postgres数据库中。

我检查了Postgres中的\ COPY命令,但它确实有一个选项来创建表。

+0

只是为了澄清:您是否想要加载CSV文件中的所有列(根据需要创建新表)或者只是与您当前的Postgresql表结构匹配的列? – gsiems

+0

你检查过http://stackoverflow.com/questions/21018256/can-i-automatically-create-a-table-in-postgresql-from-a-csv-file-with-headers? –

回答

0

您可以尝试创建一个兼容pg_dump的文件,而该文件具有相应的“创建表”部分,并用它来加载数据。

0

当您需要按摩不同种类的数据时,我建议使用外部ETL工具(如CloverETL,Talend Studio或Pentaho Kettle)进行数据加载。

\copy确实用于在已知结构中导入格式良好的数据。