我试图在http://www.postgresql.org/docs/8.3/interactive/sql-syntax-lexical.html解决问题的基础,但没有成功.
我正在使用的复制命令是:
copy my_table (fIEld_1,fIEld_2,fIEld_3 ...) from '/tmp/source.csv' with csv
源数据使用逗号分隔符双引号.如有必要,可以更改…
“价值”,“另一个价值”,“这是”另一个“价值”,“不再,谢谢”
解决方法 您必须引用嵌入式引号.默认值是它们的两倍,因此您的数据应为:
"value","another value","this is ""another"" value","no more,thanks"
另一种方法是不加引号(但你必须引用逗号,如果有的话),就像
value,another value,this is "another" value,no more,thanks
更新:这是有效的,但你必须确保引用嵌入的”(在这种情况下通过添加反斜杠)
DROP table tmp.my_table CASCADE;CREATE table tmp.my_table ( fIEld_1 varchar,fIEld_2 varchar,fIEld_3 varchar,fIEld_4 varchar );copY tmp.my_table (fIEld_1,fIEld_3,fIEld_4)FROM STDINWITH CSV DEliMITER ',' QUOTE '"' ESCAPE '\' ;"value","this is \"another\" value",thanks"\. ;SELECT * FROM tmp.my_table;总结
以上是内存溢出为你收集整理的postgresql – Postgres – 复制(剥离双引号)全部内容,希望文章能够帮你解决postgresql – Postgres – 复制(剥离双引号)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)