pyqt查询数据库(pyqt5 数据库)

编程知识 6
本篇文章给大家谈谈pyqt查询数据库,以及pyqt5 数据库对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 pyqt5子窗体中都引用了数据库模块,来回切换就出错了 pyqt5是做界面的。连接数据库应该是pymysql,至于插入不进去,可能是执行sql之后没有commit。在使用pyqt5连接mysql数据库时,出现连接错误,QSqlDatabase:QMYSQLdrivernotloadedQSqlDatabase:availabledrivers:QSQLITEQMYSQLQMYSQL3QPSQLQPSQL7解决方法是,进入sql驱动目录,能找到共享库libqsqlmysql.so/usr/local/lib/python3.6/dist-packages/PyQt5/Qt/sqldrivers,运行终端命令。

本篇文章给大家谈谈pyqt查询数据库,以及pyqt5 数据库对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

pyqt5子窗体中都引用了数据库模块,来回切换就出错了

pyqt5是做界面的。

连接数据库应该是pymysql,至于插入不进去,可能是执行sql之后没有commit。

在使用pyqt5连接mysql数据库时,出现连接错误,QSqlDatabase:QMYSQLdrivernotloadedQSqlDatabase:availabledrivers:QSQLITEQMYSQLQMYSQL3QPSQLQPSQL7解决方法是,进入sql驱动目录,能找到共享库libqsqlmysql.so/usr/local/lib/python3.6/dist-packages/PyQt5/Qt/sqldrivers,运行终端命令。

为什么用pyqt的不多?

大多是因为不会用,他们在自学的时候,找的资料教程一般都是手写的代码,等到他们学会用的时候,就知道是真的好用。

PyQt是一个创建GUI应用程序的工具包。它是Python编程语言和Qt库的成功融合。Qt库是目前最强大的库之一。PyQt是由Phil Thompson 开发。

PyQt实现了一个Python模块集。它有超过300类,将近6000个函数和方法。它是一个多平台的工具包,可以运行在所有主要操作系统上,包括UNIX,Windows和Mac。

PyQt采用双许可证,开发人员可以选择GPL和商业许可。在此之前,GPL的版本只能用在Unix上,从PyQt的版本4开始,GPL许可证可用于所有支持的平台。

因为可用的类有很多,他们被分成几个模块。 QtCore模块包含核心的非GUI功能。该模块用于时间、文件和目录、各种数据类型、流、网址、MIME类型、线程或进程。

QtGui模块包含图形组件和相关的类,例如按钮、窗体、状态栏、工具栏、滚动条、位图、颜色、字体等。

QtNetwork模块包含了网络编程的类,这些类允许编写TCP/IP和UDP的客户端和服务器,他们使网络编程更简单,更轻便。

QtXml包含使用XML文件的类,这个模块提供了SAX和DOM API的实现。QtSvg模块提供显示的SVG文件的类。可缩放矢量图形(SVG)是一种用于描述二维图形和图形应用程序的XML语言。

QtOpenGL模块使用OpenGL库渲染3D和2D图形,该模块能够无缝集成Qt的GUI库和OpenGL库。QtSql模块提供用于数据库的类。

pyqt显示sql sever的中文是乱码

解决:

[sql]

set names utf8;

--则等同于

set character_set_client=utf8;

set character_set_results=utf8;

set character_set_connection=utf8;

如果仍出现乱码

执行set names gbk;或者set names gb2312;

pyqt是前端吗

是一个前端。

在PyQT中编写了一个单独的脚本(即完整堆栈)GUI,它查询SQL数据库,使用查询输出执行一些函数,然后在QtGui.QApplication中以图形方式显示这些输出。

决定将其转换为可以在本地服务器上托管的Web应用程序。

pyqt操作Oracle数据库 配置流程

1、python 版本和数据库版本相同 都是32位或者 64位

2、 安装cx_Oracle

3import 使用

pyqt4怎么连接mysql数据库

pyqt4连接mysql数据库的方法:

原料:sip-4.17.tar.gz、PyQt-gpl-5.5.1.tar.gz安装包

下载后解压缩到用户目录。

键入以下命令:

python configure.py (或python)

makesudo make install

1、安装mysql的sqldrivers

默认情况下qt只有SQLite驱动,其它驱动要自己安装:

sudo apt-get install libqt4-sql-mysql libqt5sql5-mysql

sudo apt-get install libqt4-sql-psql libqt5sql5-psql

2、对于安装MATLAB的系统可能出现动态链接库版本问题

如import QtPy模块时出错

from PyQt4.QtQtSql import *

Traceback (most recent call last):

File "stdin", line 1, in module

ImportError: /opt/local/MATLAB/R2012a/bin/glnxa64/QtSql.so.4: undefined symbol: _ZN31

locate QtSql.so

然后把链接改到系统库下

/opt/local/MATLAB/R2012a/bin/glnxa64/libQtSql.so.4 - /usr/lib/x86_64-linux-gnu/libQtSql.so.4.8.6

我的系统里QtCore、QtGui、QtOpenGL、QtNetwork等都有问题、需要以上操作。修改后未发现MATLAB运行异常

3、测试代码

mysql

#-*- coding: utf-8 -*-

from PyQt4.QtGui import *

from PyQt4.QtCore import *

from PyQt4.QtSql import *

import sys

#创建数据库连接

def createConnection():

#选择数据库类型,这里为mysql数据库

db=QSqlDatabase.addDatabase("QMYSQL")

db.setDatabaseName("you_db")

db.setHostName("localhost") #set address

db.setUserName("you_usr"); #set user name

db.setPassword("you_passwd"); #set user pwd

#打开数据库

#打开数据库

if (db.open()):

print ("Success")

else:

print ("Failed to connect to mysql")

#创建表

def createTable():

#创建QsqlQuery对象,用于执行sql语句

q=QSqlQuery()

q.exec_("create table if not exists t1 (f1 integer primary key,f2 varchar(20))")

q.exec_("delete from t1")

#这里使用 u 将字符串转换成unicode编码,解决中文乱码

q.exec_(u"insert into t1 values(1,'我')")

q.exec_(u"insert into t1 values(2,'我')")

q.exec_("commit")

class Model(QSqlTableModel):

def __init__(self,parent):

QSqlTableModel.__init__(self,parent)

#设置要载入的表名

self.setTable("t1")

#这一步应该是执行查询的操作

self.select()

#数据更新的策略,详细可以查看Qt文档

self.setEditStrategy(QSqlTableModel.OnManualSubmit)

class TestWidget(QWidget):

def __init__(self):

QWidget.__init__(self)

vbox=QVBoxLayout(self)

self.view=QTableView()

self.model=Model(self.view)

self.view.setModel(self.model)

vbox.addWidget(self.view)

if __name__=="__main__":

a=QApplication(sys.argv)

createConnection()

createTable()

w=TestWidget()

w.show()

sys.exit(a.exec_())

测试完成,连接成功。

pyqt查询数据库的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于pyqt5 数据库、pyqt查询数据库的信息别忘了在本站进行查找喔。

pyqt查询数据库 pyqt显示mysql数据库表
扫码二维码