有没有一种方法可以用postgres复制来保留制表符空间



我正试图将Postgres数据库中的一些数据复制到ByteArrayOutputStream对象中,因此我使用库org.postgresql.copy.CopyManager:的copyManager

this.copyManager.copyOut("copy ("+sqlQuery+") TO STDOUT encoding 'WIN1252' " , bo)**

所有这些都很好,除非我有一些带有制表符的数据,比如- abcd,当它复制时,它用t替换它,所以我得到的结果是-tabcd

你能帮我吗?

您不需要默认的text格式,您需要CSV:

COPY tab TO STDOUT (FORMAT 'csv', ENCODING 'WIN1252');

使用psycopg2,使用copy_expert,thich允许您指定COPYSQL语句将所有您想要的选项。

为了避免转义字符(默认情况下为"(,请使用数据中未出现的分隔符:

COPY tab TO STDOUT (FORMAT 'csv', ENCODING 'WIN1252', DELIMITER '|');

相关内容

  • 没有找到相关文章

最新更新