PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

psycopg2.ProgrammingError:erro de sintaxe em ou próximo a \


\ é um escape em strings Python, então sua string contém o escape \c . No entanto, \c é um escape inválido no Python, e o Python deixa os escapes inválidos inalterados, então "\copy" é apenas \copy . (Assim, a resposta de @tiziano é enganosa).
>>> print "\c"
\c

O verdadeiro problema é que \copy é um psql comando, não um comando PostgreSQL do lado do servidor. Você não pode usá-lo com um cliente que não seja psql . Em vez disso, você deve usar o o psycopg2 suporte para COPY para fazê-lo através do seu driver cliente.