这是我的代码(目前):
conn = sqlite3.connect(db)
conn.text_factory = str #bugger 8-bit bytestrings
cur = conn.cursor()
reader = csv.reader(open(csvfile, "rU"), delimiter = '\t')
for Number, Name, Message, Datetime, Type in reader:
# populate subscriber table
if str(Number)[:1] == '1':
tmpNumber = str(Number)[1:]
Number = int(tmpNumber)
cur.execute('INSERT OR IGNORE INTO subscriber (name, phone_number) VALUES (?,?)', (Name, Number))
cur.close()
conn.close()
以下是csv文件中的一些示例数据(文件中用制表符分隔):
Number Name Message Date/Time Type
16665551212 Jane Doe message one 11/23/2011 6:34:44 AM Incoming
16665551212 Jane Doe message two 11/23/2011 4:53:21 PM Incoming
代码执行时没有任何错误,只是没有写入数据库。为什么会这样?你知道吗
您需要提交更改:^{}
如果您根本不想使用事务,即在“autocommit”模式下工作,请在
connect()
调用中使用isolation_level=None
。然而,这通常是个坏主意。你知道吗相关问题 更多 >
编程相关推荐