将文本文件LINE BY LINE插入Python Sqlite3表的ROW BY ROW

时间:2019-01-16 19:46:53

标签: database python-3.x file sqlite transfer

我正在我的课堂上编写一个程序,该程序以我居住的状态(约90,000行)接收包含婴儿名字的文本文件,并将其放入数据库中。 对于如何将文本文件LINE BY LINE移动到数据库中并插入ROW BY ROW而不是一个字符串,我似乎找不到其他方法

例如:我希望数据库具有:

状态,性别,年份,名称,金额

而不是

状态,性别,年份,名称,AmountState,性别,年份,名称,AmountState,性别,年份,名称,AmountState,性别,年份,名称,金额……。

每行包含

状态

性别

年份

名称

金额(我所居住州那一年的婴儿名字的数量)

_________________________________________________________

这是我到目前为止的代码,当然,它可能是不正确的。

import sqlite3

conn = sqlite3.connect("dbBabyNames.db")

c = conn.cursor()

c.execute("CREATE TABLE IF NOT EXISTS tblBabyNames(State CHAR(2), Gender CHAR(1), Year INT, Name CHAR(20), Amount INT)")

file_example = open('example.txt', 'r')
file_content = file_example.readlines()
file_example.close()

query = "INSERT INTO tblBabyNames VALUES (%s,%s,%s,%s,%s)"

values = [line.split() for line in file_content]

c.executemany(query, values)

0 个答案:

没有答案