excel表格写入sqlite3数据库
前面告警统计生成的wjj.xlsx表格,写入sqlite3数据库进行保存,后续需要用时直接从数据库统一提取即可:
- 用到了pandas进行表格读取;
- 用sqlite3模块连接数据库,如果数据库不存在会自动新建一个同名数据库;
- 创建FmTable数据表,有FM_CODE和FM_COUNT即告警码和每条告警的个数两个数据项;
- 然后execute执行insert插入操作,将读取的excel数据插入数据库中
- 最后记得close数据库,并打印成功消息
# -*- encoding=UTF-8 -*-
__author__ = 'wjj1982'
__date__ = '2019/8/2 22:28'
__product__ = 'PyCharm'
__filename__ = 'test'
import pandas as pd
import sqlite3
import os
# 读取excel文件
filename = 'wjj.xlsx'
pd_xlsx = pd.read_excel(filename)
# 为了减少多次运行程序麻烦,每次运行直接删除数据库哈
if os.path.exists('wjj-db'):
os.remove('wjj-db')
# 数据库连接,新建数据表,插入数据
conn = sqlite3.connect('wjj-db')
conn.execute('''CREATE TABLE IF NOT EXISTS FmTable (
'FM_CODE' TEXT NOT NULL PRIMARY KEY UNIQUE,
'FM_COUNT' INTEGER NOT NULL)''')
for index in range(1, pd_xlsx.shape[0]):
conn.execute("INSERT INTO FmTable(FM_CODE,FM_COUNT) VALUES(?,?)",
(pd_xlsx.iloc[index]['fm_name'], int(pd_xlsx.iloc[index]['count'])))
conn.commit()
# 关闭数据库连接
conn.close()
print("excel to db successfully!")
网友评论