2017-07-03 46 views
1

我已經寫了一段Python代碼,應該將CSV數據複製到我創建的表來託管數據。下面是代碼:Python:錯誤從CSV導入到Postgres的數據(錯誤:整數無效的輸入語法:)

def sql_copy_command(csv_file, schema, database, table, delimiter = ',', header = True): 
    if header: 
     sql_command = """COPY "{schema}_{tbl}" FROM '{the_csv_file}' DELIMITER '{dlm}' CSV HEADER;""".format(the_csv_file = csv_file, db = database, tbl = table, dlm = delimiter, schema = schema) 

    else: 
     sql_command = """COPY "{schema}_{tbl}" FROM '{the_csv_file}' DELIMITER '{dlm}' CSV;""".format(the_csv_file = csv_file, db = database, tbl = table, dlm = delimiter, schema = schema) 

    return sql_command 

這引發以下錯誤:

DataError: invalid input syntax for integer: "Visa" 
CONTEXT: COPY insight_transaction, line 2, column id: "Visa" 

在我看來,與其在ACCOUNT_TYPE,這是在我的模型中的第一場,Postgres需要看到ID,這是表格中的第一列。鑑於ID是自動生成的,我不知道如何在我的代碼中解決這個問題。

回答

相關問題