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

Psycopg2 copy_from lança DataError:sintaxe de entrada inválida para inteiro


Acabei usando o comando copy_expert. Observe que no Windows, você precisa definir a permissão do arquivo. Esta postagem é muito útil definindo permissão .
with open(the_file, 'r') as f:            
        sql_copy_statement = "copy {table} FROM '"'{from_file}'"' DELIMITER '"'{deli}'"' {file_type} HEADER;".format(table = the_table,
                                                                                                                     from_file = the_file,
                                                                                                                     deli = the_delimiter,
                                                                                                                     file_type = the_file_type                                                                                                                                         
                                                                                                                    )
        print sql_copy_statement
        cur.copy_expert(sql_copy_statement, f)
        conn.commit()