当前位置:Gxlcms > 数据库问题 > Ubuntu12.04下Qt连接MySQL数据库

Ubuntu12.04下Qt连接MySQL数据库

时间:2021-07-01 10:21:17 帮助过:3人阅读

1、安装 Qt 和 MySQL

  若未安装以上软件,可参考我的博客安装。

  • 安装Qt:Ubuntu12.04下安装Qt4总结 --> http://www.cnblogs.com/gaohongchen01/p/4204860.html
  • 安装MySQL:Ubuntu12.04下安装Apache+PHP+MySQL --> http://www.cnblogs.com/gaohongchen01/p/3710992.html

2、安装Qt的MySQL驱动

  下载安装包 libqt4-sql-mysql_4.8.1-0ubuntu4.8_amd64.deb

sudo apt-get download libqt4-sql-mysql

  解压安装包

ar -x libqt4-sql-mysql_4.8.1-0ubuntu4.8_amd64.deb

技术分享

  解压 data.tar.lzma 文件 出现 data.tar 文件

lzma -dk data.tar.lzma

技术分享  

  解压 data.tar 文件

tar -xvf data.tar

技术分享

  将解压出的 libqsqlmysql.so 文件拷贝到QtSDK lib搜索目录下的sqldrivers文件夹下即可。

  QtSQK lib搜索目录可通过以下Qt程序得到:

qDebug() << QCoreApplication::libraryPaths();

3、编写Qt程序连接MySQL

  对于使用SQL类的应用程序,需将如下的命令行添加到其.pro文件中:

QT += sql

  编写控制台应用程序,main.c中的程序为:

#include <QCoreApplication>
#include<QtSql/QSqlDatabase>
#include<QtSql/QSqlError>
#include<QtSql/QSqlQuery>
#include<QTextCodec>
#include<QtDebug>
#include<QStringList>
#include<iostream>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    
    QTextCodec::setCodecForCStrings(QTextCodec::codecForLocale());
    //QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
    //QTextCodec::setCodecForLocale(QTextCodec::codecForLocale());

    //QCoreApplication::addLibraryPath("/usr/lib/i386-linux-gnu/qt4/plugins/");
    qDebug() << QCoreApplication::libraryPaths();
    qDebug() << QSqlDatabase::drivers();

    QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
    db.setHostName("localhost");
    db.setDatabaseName("ghcDB");
    db.setUserName("root");
    db.setPassword("123456");

    if(!db.open())
    {
        qDebug()<<db.lastError().text()<<endl;
        return false;
    }

    return a.exec();
}

参考:http://www.cnblogs.com/qianyuming/archive/2011/08/13/2137402.html

Ubuntu12.04下Qt连接MySQL数据库

标签:

人气教程排行