ubuntulinux下使⽤Qt连接MySQL数据库的⽅法
环境说明:
ubuntu 10.04.2
QtSDK (1.5G安装包的那个)
mysql5.1
1.安装MySQL
Linux下完整的MySQL开发需要安装服务器端,如果安装客户端也没什么不好。直接在软件中⼼搜mysql,把client和server选上。
server在安装时会提⽰为root⽤户设置密码,设⼀个好了。
我使⽤的是mysql5.1版本,⽤户名密码存储在⼀个叫mysql的数据库⾥,只有管理员级别才能看到。
如果直接在终端中输⼊ mysql,可能会提⽰ERROR 1045 (28000),这是因为这时候你是以⾃⼰⽤户名访问数据库,⽽⽬前数据库中只有⼀个root⽤户。没关系,如果有必要,可以添加⼀个⽤户进去:
mysql -uroot -p -->以root⽤户登录
grant usage on *.* to dummy@localhost; -->授权名为dummy的⽤户本地登录,这⾥换成⾃⼰的⽤户名就可以了
不过这时候直接mysql只有普通的权限,创建数据库、操作mysql都是不可以的,如果真有将其赋予管理员权限的需要,可以⾃⼰查阅有关资料。
2.安装Qt的MySQL驱动。
⽅法⼀:直接sudo apt-get install libqt4-sql-mysql ,这是Qt4的mysql驱动,就不⽤⾃⼰费劲编译了,不过可能会额外下载⼀些东西。
将 /usr/lib/qt4/plugins/sqldrivers/libqsqlmysql.so拷贝到你的QtSDK sqldrivers⽬录下,我当时是直接⽤普通权限安装,⽬录为:~/QtSDK/Desktop/Qt/473/gcc/plugins/sqldrivers
⽅法⼆:其实你也可以sudo apt-get download libqt4-sql-mysql,把包解压缩,然后把⾥⾯的so⽂件搜出来直接拷贝到那⾥。⽅法三:乖乖按照官⽅⽅法编译,但是貌似可⾏性不⼤,因为新版本的QtSDK并没有src⽬录,默认也没有mysql的驱动。3.做个demo试⼀下
记得在pro⽂件中 QT +=那⾥加上sql,否则qmake是不会去sql的相关部分的
复制代码代码如下:
#include <QtCore/QCoreApplication>
#include <QSqlDatabase>
#include <QDebug>
int main(int argc, char *argv[])
{
linux安装数据库QCoreApplication a(argc, argv);
QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setDatabaseName("study");
db.setUserName("root");
db.setPassword("tyh");
if(!db.open()){
qDebug()<<"Unable to open database";
}else{
qDebug()<<"Database connection established";
}
();
}
这⾥study这个数据库之前我已经创建过了,如果连接成功,就会显⽰Database connection established。我是建⽴的控制台程序哈。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。