当前位置:  开发笔记 > 编程语言 > 正文

在python sqlite3模块中导入数据文件(如.csv)的任何其他方法?[不一一插入]

如何解决《在pythonsqlite3模块中导入数据文件(如.csv)的任何其他方法?[不一一插入]》经验,为你挑选了1个好方法。

在sqlite3的客户端CLI中,有".import文件TABLE_name"来执行此操作.

但是,我现在不想在我的服务器上安装sqlite3.

在python sqlite3模块中,我们可以创建和编辑数据库.

但是,除了逐行插入行之外,我还没有找到将数据文件导入TABLE的方法.

还有其他方法吗?



1> YOU..:

您可以使用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')

推荐阅读
雨天是最美
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有