在python sqlite3模块中导入数据文件(如.csv)的任何其他方法? [不一一插入]
作者:互联网
在sqlite3的客户端CLI中,有“.import文件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')
标签:python,import,sqlite3,executemany 来源: https://codeday.me/bug/20190515/1111018.html