【发布时间】:2014-10-23 08:29:36
【问题描述】:
我正在尝试在 python 脚本中从 CSV 文件填充表格。
后面的 SQL 语句运行没有错误:
COPY registro
FROM '/home/pablo/Escritorio/puntos/20140227.csv'
DELIMITER ','
CSV header;
CSV 有标头,使用header 参数,导入时不会出错。
当我从我的 python 脚本执行它时,问题就来了。我发现不尝试导入标头的唯一方法是使用 copy_expert() 方法。运行下面的 Python 脚本后,我没有收到错误消息,但表仍然为空。
任何可能的线索?或者可能有任何其他方式从带有标题的 CSV 复制表格?
谢谢。
#/usr/bin/env python
# -*- coding: utf-8 -*-
import psycopg2
import os
import glob
DSN = "dbname=gps user=postgres host=localhost"
con = psycopg2.connect(DSN)
cur = con.cursor()
my_file = open('/home/pablo/Escritorio/puntos/20140227.csv')
#This is only a test file, not all the directory
sql = "COPY registro FROM stdin DELIMITER \',\' CSV header;"
cur.copy_expert(sql, my_file)
cur.close()
con.close()
【问题讨论】:
-
我不认为这是重复的,它既不谈论 copy_expert() 也不谈论 CSV 标头
-
这更像是一个“这也可能有效”忘记写这个作为评论。
标签: python sql postgresql csv psycopg2