psycopg2转义字符问题

问题描述 投票:0回答:1

我正在尝试编写一个python脚本来定期使用\ COPY TO将select语句导出到CSV文件。

查询是

postgres=# \copy (select * from mytable where temp>32.5) to ...

此命令在psql命令行中有效。但是在我的脚本中它给出了这个错误,可能与字符串中的转义字符有关:

psycopg2.ProgrammingError: syntax error at or near "\"
LINE 2:         \copy (select * 
                ^

我在我的python代码中尝试了显而易见的'//'无济于事。它似乎逃避正斜杠或不逃避正斜杠产生相同的错误。

postgresql escaping psycopg2
1个回答
0
投票

\copy只是一个psql命令。使用Psycopg的copy_expert cursor method

cursor.copy_expert (
    'copy (select * from mytable where temp>32.5) to stdout'
    '\path\to\file.csv'
),
© www.soinside.com 2019 - 2024. All rights reserved.