# coding:UTF-8
import os
import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtSql import *
from ExcelTool import ExcelHandler
def insertData(filenames):
query = QSqlQuery()
for filename in filenames:
eh = ExcelHandler()
results = eh.read_xls(filename)
for result in results:
for lines in result[1]:
sql = "INSERT INTO pseas VALUES ("
for ii in range(len(lines)):
sql = sql + "'" + lines[ii].replace("\n","") + "'"
if ii == len(lines) - 1:
sql = sql + ")"
else:
sql = sql + ","
query.exec_(sql)
print sql
QApplication.processEvents()
query = QSqlQuery()
sql = u"delete FROM pseas where jxName='XXX'"
query.exec_(sql)
print sql
QApplication.processEvents()
query.clear()
query.finish()
def createData(filenames):
print "Dropping tables..."
query = QSqlQuery()
query.exec_("DROP TABLE version")
QApplication.processEvents()
print "Creating tables..."
# query.exec_("""CREATE TABLE pseas (bsid VARCHAR(255) PRIMARY KEY NOT NULL,page VARCHAR(255),jxnum VARCHAR(255), jxname VARCHAR(255), jgnum VARCHAR(255), jgjpname VARCHAR(255), jgenname VARCHAR(255), ljid VARCHAR(255), ljnum VARCHAR(255),lj12num VARCHAR(255),ljjpname VARCHAR(255),ljenname VARCHAR(255),ljcount VARCHAR(255))""")
query.exec_("""CREATE TABLE version (vsid INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE NOT NULL, vsnum VARCHAR(255) ,vsdate VARCHAR(255))""")
QApplication.processEvents()
# print "Creating data..."
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('1','20100802')""")
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('2','20100802')""")
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('3','20100802')""")
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('1','20100803')""")
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('2','20100803')""")
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('3','20100803')""")
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('4','20100803')""")
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('1','20100804')""")
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('1','20100805')""")
# query.exec_("""INSERT INTO version(vsnum,vsdate) VALUES('1','20100806')""")
# QApplication.processEvents()
# query.exec_("""INSERT INTO version VALUES('1','1','20100802')""")
# query.exec_("""INSERT INTO version VALUES('2','2','20100802')""")
# query.exec_("""INSERT INTO version VALUES('3','3','20100802')""")
# query.exec_("""INSERT INTO version VALUES('4','1','20100803')""")
# query.exec_("""INSERT INTO version VALUES('5','2','20100803')""")
# query.exec_("""INSERT INTO version VALUES('6','3','20100803')""")
# query.exec_("""INSERT INTO version VALUES('7','4','20100803')""")
# query.exec_("""INSERT INTO version VALUES('8','1','20100804')""")
# query.exec_("""INSERT INTO version VALUES('9','1','20100805')""")
# query.exec_("""INSERT INTO version VALUES('10','1','20100806')""")
# QApplication.processEvents()
print "Populating tables..."
vsid = '0'
vsnum='0'
vsdate = '20100813'
query.exec_("select max(vsid),vsnum,vsdate from version where vsdate='"+vsdate+"'")
while query.next():
vsid = unicode(query.value(0).toString())
vsnum = unicode(query.value(1).toString())
vsdate = unicode(query.value(2).toString())
if vsid=='':
print "vsid = ''"
if vsnum=='':
print "vsnum = ''"
if vsdate == "":
print "vsdate = ''"
# insertData(filenames)
# eh = ExcelHandler()
# result = eh.read_xls(filename)
# for lines in result:
# sql = "INSERT INTO pseas VALUES ("
# for ii in range(len(lines)):
# sql = sql + "'" + lines[ii] + "'"
# if ii == len(lines)-1:
# sql = sql + ")"
# else:
# sql = sql + ","
# query.exec_(sql)
# print sql
# QApplication.processEvents()
def main():
app = QApplication(sys.argv)
filename = os.path.join(os.path.dirname(__file__), "pseas.db")
create = not QFile.exists(filename)
db = QSqlDatabase.addDatabase("QSQLITE")
db.setDatabaseName(filename)
if not db.open():
QMessageBox.warning(None, "Asset Manager",
QString("Database Error: %1").arg(db.lastError().text()))
sys.exit(1)
app.setOverrideCursor(QCursor(Qt.WaitCursor))
app.processEvents()
if create:
files = [u'./datafiles/aaa.xls']
createData(files)
else:
files = ['./datafiles/bbb.xls']
# createData(files)
insertData(files)
app.exec_()
del db
sys.exit(1)
main()
分享到:
相关推荐
NULL 博文链接:https://metallica-1860.iteye.com/blog/713146
python QT GUI快速编程--pyqt编程指南,快速学习pythonGUI开发,图形化编程。
《PYTHON QT GUI快速编程---PYQT编程指南》,其英文原版书名为:《Rapid GUI Programming with Python and Qt》随书源码。
官方离线安装包,亲测可用
资源分类:Python库 所属语言:Python 资源全名:QT-PyQt-PySide-Custom-Widgets-0.1.8.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
PyQt5结合Socket聊天室功能开发,项目中使用线程进行不同任务处理,是学习Scoket及线程非常好的案例。
PYTHON QT GUI快速编程-PYQT编程指南 基于PyQt4的技术文档
利用qtdesigner设计界面工具,连接数据库并显示在tableview
从网上下载的PyQt4,好用又便宜,开发python+QT有帮助。
pyqt5新手入门教程,以章节的形式加以讲述,每一章实现了一个功能
第4章 图形用户界面设计 Python程序设计案例教程--第-4-章--图形用户界面设计全文共66页,当前为第1页。 4.1 图形用户界面概述 Python程序设计案例教程--第-4-章--图形用户界面设计全文共66页,当前为第2页。 4.1.1...
python库,解压后可用。 资源全名:PyQt5_sip-12.8.1-cp35-cp35m-win_amd64.whl
Python3.7 64位方便下载Python3.7 64位方便下载Python3.7 64位方便下载。PyQt5-5.10.1 wheel 安装 pip install 路径:\PyQt5-5.10.1-5.10.1-cp35.cp36.cp37-none-win_amd64.whl。eric6 17.12 的安装包及汉化包。 Eric...
这是一个入门级的 PyQt 指南。其目的在于引导读者快速上手 PyQt4 工具包。该指南在 Linux 环境下创建并通过测试。 关于 PyQt PyQt 是用来创建 GUI 应用程序的工具包。它是 Python 编程语言与已获得成功的 Qt 库 的 ...
python项目开发实战_AI人脸识别签到打卡系统(PyQt5+百度智能云+OpenCV-Python+SQLite3)_编程案例实例教程
官方离线安装包,测试可用。请使用rpm -ivh [rpm完整包名] 进行安装
PyQt5-5.6-gpl-Py3.5-Qt5.6.0-x64-2 学习Python界面必用PyQt5软件
python-qt5, 在 Windows 上,通过PyPI实现 python 2.7 64位的非官方 PyQt5 非官方的PyQt5通过 PyPI,用于 python-2.7-64位 使用pip和git安装 使用这种方法,你得到版本 5.7.1$ pip install git+git://github....
使用pyqt5实现的Python-GUI动态作图例子,包含PyQtGraph GraphWidget demo和Matplotlib MatplotlibWidget demo
资源分类:Python库 所属语言:Python 资源全名:PyQt5-5.9.1-5.9.2-cp35.cp36.cp37-none-win32.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059