我正在我的课堂上编写一个程序,该程序以我居住的状态(约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)