Linux下Qt与mysql建立连接
授权许可的限制,Qt的开源版本无法提供所有的驱动程序.在mysql的官网上也没找到提供给Qt的驱动,网上说的编译方法貌似不适合现在的版本,研究了半天,终于找到一个方法.
系统环境:Kubuntu 11.10
- sudo apt-get download libqt4-sql-mysql
把包解压缩,然后把里面的so文件搜出来直接拷贝到你的QtSDK的sqldriver目录.我的目录是~/QtSDK/Desktop/Qt/4.8.0/gcc/plugins/sqldrivers.
mysql安装:
假设你已经安装mysql 如未安装:
- sudo apt-get install mysql-server mysql-client
mysql安装后默认是没有设置root的密码,需要先更改下mysql的root密码.
- sudo mysqladmin -u root password XXXX
xxxx即为你要给root账户的密码.
进入mysql 创建个测试用的数据库,我这里用的是 myqt.
- create database myqt;
下面检测一下Qt是否能和mysql连接,写个程序检测下
- #include <QtCore/QCoreApplication>
- #include <QSqlDatabase>
- #include <QDebug>
- int main(int argc, char *argv[])
- {
- QCoreApplication a(argc, argv);
- QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
- db.setHostName("localhost");
- db.setDatabaseName("myqt");
- db.setUserName("root");
- db.setPassword("123456");
- if(!db.open()){
- qDebug()<<"Unable to open database";
- qDebug()<<"Database connection established";
- }
- return a.exec();
- }
在.pro文件中 QT =那里需要加上sql
若能连接便会输出 Database connection established .
本文出自 “一阵风” 博客,请务必保留此出处http://awind.blog.51cto.com/4628868/843139