从CSV Python导入日期时间

时间:2014-06-12 03:38:40

标签: python sql datetime csv

我正在尝试从CSV导入数千个对象的列表。导入时,除日期和日期时间对象外,所有内容都正确存储。这些对象在我的数据库中变为null。

日期时间对象的一个​​示例是nrel_date_updated键。有趣的是,如果我在我的导入脚本中放置一个print语句来打印nrel_date_updated,它会正确打印日期的unicode。尽管如此,数据库中的日期变为空。

我已经尝试在keyString和valString循环之外添加nrel_date_updated,因此它不会自动连接为字符串,但我在数据库中得到了相同的结果 - null。

任何想法我的问题是什么?

con = sqlite3.connect("../CCdb.sqlite3")
cur = con.cursor()
f = open('alt_fuel_stations.csv', 'rt')
try:
    reader = csv.DictReader(f)
    for row in reader:
        keyString = ""
        valString = ""
        for key,value in row.iteritems():
            keyString += key + ","
            if (key != 'latitude' and key != 'longitude' and key != 'federal_agency_id'
                and key != 'ev_dc_fast_num' and key != 'ev_level1_evse_num' and key != 'ev_level2_evse_num'):
                valString += "'" + value + "'," 
            else:
                if value=="":
                    valString += "null,";
                else:
                    valString += value + ",";
        print valString;
        valString = valString[:-1];
        keyString = keyString[:-1];
        cur.execute("INSERT INTO chargecamp_station" +
            "(" + keyString + ")" + "VALUES " + 
            "(" + valString + ");")
        con.commit()

finally:
    f.close()

0 个答案:

没有答案