成都创新互联网站制作重庆分公司

包含qt怎么连接mysql的词条

pyqt4怎么连接mysql数据库

pyqt4连接mysql数据库的方法:

创新互联公司专注于企业网络营销推广、网站重做改版、六合网站定制设计、自适应品牌网站建设、H5高端网站建设商城网站定制开发、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为六合等各大城市提供网站开发制作服务。

原料: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_())

测试完成,连接成功。

QT怎么ssh连接mysql数据库

在这里小编使用的是SQLyogEnt进行远程连接配置了SSH的数据库。通过桌面的SQLyogEnt运行数据库客户端。

在界面中点击【新建】按钮,在Mysql下填写Mysql数据库的ip地址、用户名、密码、端口(默认在3306)就好,数据库名称。这里跟普通的连接数据库的方法一致。

这个时候读者可以点击一下【测试连接】,这个时候点击测试连接去连接数据库是不会成功的,因为数据库配置了SSH访问。如下图:

配置完成Mysql信息后,在旁边选择【SSH】

qt中怎么连接mysql数据库

1: windows 下登陆mysql 命令行,(1)进入cmd (2) cd mysql 安装路径/mysqlserver5.6/bin (3) 使用命令mysql -u root -p 然后根据提示输入密码 进入命令行 select user(); //显示当前用户 2: 在同一台电脑上利用Qt 访问数据库 (1)显示当前电脑上安装的数据库驱动 QStringList drivers = QSqlDatabase::drivers(); foreach(QString driver, drivers) qDebug() "/t" driver; (2)QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");/对 QMYSQL进行操作,本函数 有第二个参数 连接名 db.setHostName("localhost");//或127.0.0.1 本主机 db.setPort(3306); db.setDatabaseName("example"); //对数据库example进行操作 db.setUserName("wangxuetao"); //wangxuetao是一个对example数据库有操作权限的账户 db.setPassword("3791948"); 于是mysql中增加一个账户可使用 Grant all previliges on *.* to ‘wangxuetao’@’localhost’ identified by ‘3791948’ with grant option; Flush privileges; //更新 (3)db.open() 函数可由于检测数据库是否连接成功 coutDBConnection(); 2. m_sqlquery = new QSqlQuery("",m_sqldb);//statement 1:connect db with sql query 3. if(result == R_OK) 4. { 5. result = m_sqlquery-exec("INSERT INTO children(fname,age) VALUES('A nn2',13)"); 6. if(!result) 7. qDebug()" [OK] ""EXEC successed"; 8. m_sqlquery-exec("SELECT * FROM children c LIMIT 0,1000"); 9. while(m_sqlquery-next()) 10. { 11. qDebug()value(0).toString()value(1). toString(); 12. } 13. }


标题名称:包含qt怎么连接mysql的词条
网页路径:http://cxhlcq.com/article/doihseg.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部