在 sqlite3 的客户端 CLI 中,有“ .import file TABLE_name ”来执行此操作。
但是,我目前不想在我的服务器上安装 sqlite3。
在 python sqlite3 模块中,我们可以创建和编辑数据库。
但是,除了逐行插入之外,我还没有找到将数据文件导入 TABLE 的方法。
还有什么办法吗?
在 sqlite3 的客户端 CLI 中,有“ .import file TABLE_name ”来执行此操作。
但是,我目前不想在我的服务器上安装 sqlite3。
在 python sqlite3 模块中,我们可以创建和编辑数据库。
但是,除了逐行插入之外,我还没有找到将数据文件导入 TABLE 的方法。
还有什么办法吗?
您可以使用executemany命令一次性插入,而不是一一插入
假设我有带有以下内容的 users.csv
"Hugo","Boss"
"Calvin","Klein"
基本上用 csv 模块打开并将其传递给 .executemany 函数
import csv,sqlite3
persons= csv.reader(open("users.csv"))
con = sqlite3.connect(":memory:")
con.execute("create table person(firstname, lastname)")
con.executemany("insert into person(firstname, lastname) values (?, ?)", persons)
for row in con.execute("select firstname, lastname from person"):
print row
#(u'Hugo', u'Boss')
#(u'Calvin', u'Klein')