python读取excel数据插入sqlite中

Posted 老鲜肉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python读取excel数据插入sqlite中相关的知识,希望对你有一定的参考价值。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author: Hogan


import xlrd
import sqlite3


def read_excel(fileName):
# 打开文件excel
workBook = xlrd.open_workbook(fileName)

# 打开表格
table = workBook.sheets()[0]
# 计算文档有多少行
all_row = table.nrows

# 返回打开文档的对象,和文档的总行数
return table, all_row


def create_con(dbname):
# conn = sqlite3.connect(‘example2.db‘) # 连接数据库
conn = sqlite3.connect(dbname) # 连接数据库
# connect()方法,可以判断一个数据库文件是否存在,如果不存在就自动创建一个,如果存在的话,就打开那个数据库。
cus = conn.cursor() # 创建游标
return cus, conn


def sql_dao(da, cus):
# cus.execute(‘‘‘CREATE TABLE stocks(id real ,lng REAL ,lat REAL,slp REAL ,intensity real ,utc text )‘‘‘)

# 向表中插入一条数据
sql = ‘‘‘insert into stocks values(%s,‘%s‘,‘%s‘,‘%s‘,‘%s‘,‘%s‘)‘‘‘ % (da[0], da[1], da[2], da[3], da[4], da[5])
cus.execute(sql)


def submit_close(conn):
# 提交当前事务,保存数据
conn.commit()
# 关闭数据库连接
conn.close()


if __name__ == ‘__main__‘:
row_all_obj, all_row_num = read_excel("datastr.xlsx")
conn, cus = create_con()
for i in range(1, all_row_num + 1):
data = row_all_obj.row_values(i)
sql_dao(data,cus )
print("插入第", i, "条")
submit_close(conn)

以上是关于python读取excel数据插入sqlite中的主要内容,如果未能解决你的问题,请参考以下文章

Python解析excel文件并存入sqlite数据库

python 读取excel数据插入到另外一个excel

为啥自己的r语言中读不了xlsx文件

从Excel文件到SQLite数据库的SQLite插入循环

python——快速读取excel文件并插入数据库

VC 读取SQLite数据库中的表的数据,该怎么解决