[英]Export + Import PSQL Table in PHP
我在 psql 中有一个语言表,看起来像这样。
我的目标是导出我的语言表并使用 PHP 将其导入。
PHP
出口
shell_exec('psql -E -U postgres -d portal -c "COPY languages TO \'/Applications/MAMP/htdocs/code/site/portal/public/csv/languages.csv\' DELIMITER \',\' "');
我让languages.csv
成功导出。
如果我打开它,它包含这个。
1,h,Advanced Settings,Geavanceerde instellingen,Ajustes avanzados,Réglages avancés,2016-11-23 14:41:25,2016-11-23 14:41:25
进口
现在,我继续我的导入,这就是我所做的
shell_exec('psql -E -U postgres -d portal -c "COPY languages (code, text, nl, es, fr, created_at, updated_at) FROM \'/Applications/MAMP/htdocs/code/site/portal/public/csv/languages.csv\' DELIMITER \',\' csv;"');
我不断得到
ERROR: invalid input syntax for integer: "1,h,Advanced Settings,Geavanceerde instellingen,Ajustes avanzados,Réglages avancés,2016-11-23 14:41:25,2016-11-23 14:41:25"
上下文:复制语言,第 1 行,列 id:“1,h,Advanced Settings,Geavanceerde instellingen,Ajustes avanzados,Réglages avancés,2016-11-23 14:4...”
我该如何解决这个问题? 我的导出命令有问题吗?
用于导入的 COPY 命令比 CSV 文件少一列。 它试图将您的updated_at
列作为第二行的code
字段。
表定义:
(code, text, nl, es, fr, created_at, updated_at)
行:
"1,h,Advanced Settings,Geavanceerde instellingen,Ajustes avanzados,Réglages avancés,2016-11-23 14:41:25,2016-11-23 14:41:25"
地图:
code - 1
text - "h"
nl - "Advanced Settings"
es - "Geavanceerde instellingen"
fr - "Ajustes avanzados"
created_at - "Réglages avancés"
updated_at - 2016-11-23 14:41:25
code2 - 2016-11-23 14:41:25 // <-- Problem
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.