从文本文件创建dabatase在python中收到错误消息



我有一个TXT文件,如下所示:

年份<1th>计数Eva>本14
性别名称
AK F 1920 玛丽 14
AK F 192012
AK M 1920
AK M 1920 12

假设您的文本文件包含逗号分隔的值:

with open("data/all.TXT", "r") as f:
result = f.readlines()
result = [x.split(",") for x in result]
import sqlite3 as sq3
con = sq3.connect("popular.db")
con.execute(
"""
CREATE TABLE IF NOT EXISTS popname  (
id INTEGER PRIMARY KEY,
state TEXT,
sex TEXT,
year TEXT,
forename TEXT,
count INTEGER
);
"""
)
for i, (state, sex, year, forename, count) in enumerate(result):
con.execute(
"""
INSERT INTO popname VALUES (?, ?, ?, ?, ?, ?);
""",
(i, state, sex, year, forename, count.strip()),
)
con.commit()

请注意,不能设置PRIMARY KEY(forename)),因为某些名称很可能会重复,并且会违反UNIQUE约束。

编辑:我添加了列id,并使用行号作为值。

相关内容

最新更新