`
yuanyu5237
  • 浏览: 162832 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

linux下QT连接mysql数据库

    博客分类:
  • QT
阅读更多

之前用C语言连了mysql数据库,因为项目毕竟是用QT包装的,还需要在qt的界面里显示,所以这一次就用QT来连一下mysql。

首先说一下我的电脑是ubuntu10.10;之前安装了QT的linux全部套件(包括qtcreator),也安装了嵌入式qt的那三个编译环境(X11,X86,ARM),但是这一次我只用qtcreatot里的qmake编译(以为之前编译完那三个环境后,我就把编译文件夹全删了)。

首先,安装mysql客户端(mysql-devel),和C语言连接一样,执行命令:

 

sudo apt-get install libmysqlclient-dev

sudo apt-get install libmysqlclient15-dev

 

因为我之前安装过,所以这一步就省略了。

然后,连接mysql数据库肯定要有驱动,这个在qt的源码里就有:进入文件夹:

cd   QTDIR/src/plugins/sqldrivers/mysql                       这就是qt存放mysql驱动源码的目录

 

目录里应该有main.cpp 和moc_qsql_mysql.cpp两个文件

执行命令:

qmake  -project                                 生成mysql.pro文件,可能这一步会说你没有权限,那么chmod给它权限就可以了

qmake "INCLUDEPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/mysql -lmysqlclient_r" mysql.pro 

 

/usr/include/mysql    mysql所有头文件所在的位置,mysql.h就在此处

/usr/lib/mysql            mysql库的位置

然后,执行命令:

make

sudo make install

此时,在QTDIR/src/plugins/sqldrivers/mysql  这个目录下,就生成了一个文件:libqsqlmysql.so;把它拷贝到QTDIR/plugins/sqldrivers, 目录下面;

现在开始编程:

随便建工程:

加入如下代码:

 

#include <QtSql>
#include <QMessageBox>
#include <QTextStream>

QTextStream out(stdout);
    QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
    db.setHostName("localhost");
    db.setDatabaseName("test");
    db.setUserName("root");
    db.setPassword("xxxxxx");
    if(!db.open())
    {
        QMessageBox::critical(0,QObject::tr("Database Error"),db.lastError().text());
        return a.exec();
    }
    QSqlQuery query;
    query.exec("SELECT * FROM t_homedata");
    while(query.next())
    {
        QString id = query.value(0).toString();
        QString type = query.value(1).toString();
        QString data = query.value(2).toString();
        out << id << ", " << type << ", " << data <<endl;
    }

 

 注意,这段代码,是我加入到工程中的,恩,我就放在main.cpp里;#include <QtSql>这个是必须的;#include <QTextStream>这个是用来进行控制台打印输出的,我的数据库名为test,中间有一个表叫

t_homedata,表里有三个varchar型字段:

其打印结果为:

 

 写道
100010, 23, 32.45
100011, 12, 99
100012, 11, 35.10

 

 注意,再进行工程的编译和运行之前(恩,因为我的电脑里实际有4个qt编译环境,所以还需要再qtcreator的project选项里设置该项目的编译器,我的编译器设置为qt-opensource,即qtcreator自带的,因为我之前所进行的mysql驱动编译也都是再qtcreator的安装目录里进行的),一定别忘了在工程的.pro文件里加上下面一行:

QT  += sql

恩,qt 帮助文档里就是这么说的:

To include the definitions of the module's classes, use the following directive:

 #include <QtSql>

To link against the module, add this line to your qmake .pro file:

 QT += sql

 

 

 

 

 

 

分享到:
评论

相关推荐

    linux下QT连接mysql数据库[定义].pdf

    Linux 下 QT 连接 MySQL 数据库 Linux 下 QT 连接 MySQL 数据库是指使用 QT 框架连接 MySQL 数据库的过程。QT 是一个跨平台的应用程序开发框架,可以在 Linux、Windows 和 macOS 等多个平台上运行。MySQL 是一个...

    linux下QT连接mysql数据库.doc

    QT 连接 MySQL 数据库在 Linux 平台下的实现 在 Linux 平台下,使用 QT 连接 MySQL 数据库是一种常见的应用场景。本文将详细介绍如何使用 QT 连接 MySQL 数据库,并提供了相关的代码示例。 首先,需要安装 MySQL ...

    linux下QT连接mysql数据库.docx

    在Linux环境下,使用QT连接MySQL数据库涉及多个步骤和知识点,主要涵盖QT的SQL模块、MySQL驱动的构建与安装,以及数据库连接与查询操作。以下是对这些知识点的详细说明: 1. **MySQL客户端库安装**: 在Linux系统...

    Qt连接mysql数据库

    在本文中,我们将深入探讨如何使用Qt框架连接到MySQL数据库,这是一个常见的任务,对于开发跨平台的数据库应用程序至关重要。Qt是一个强大的C++库,提供了丰富的功能来构建图形用户界面和网络应用,而MySQL则是一种...

    QT连接MYSQL数据库的驱动

    通过以上步骤,你应该能够成功解决QT连接MySQL数据库时出现的“QMYSQL driver not loaded”问题。在开发过程中,确保经常更新QT和MySQL的版本,以获取最新的安全修复和功能改进。同时,理解和熟练使用QT的数据库API...

    Qt连接MySQL数据库

    本篇文章将详细阐述如何使用Qt连接并操作MySQL数据库。 首先,为了连接MySQL数据库,我们需要在Qt项目中包含必要的库。Qt提供了一个名为`QtSql`的模块,它支持多种数据库系统,包括MySQL。在`.pro`文件中,添加以下...

    linux下QT图形编程连接MYSQL数据库的学生管理系统

    在Linux环境下,使用QT进行图形编程来开发一个连接MySQL数据库的学生管理系统是一项常见的任务。QT是一个功能强大的跨平台应用程序开发框架,支持多种操作系统,包括Linux、Windows和Mac OS等。而MySQL则是一种流行...

    在Qt中连接MySQL数据库.txt

    ### 在Qt中连接MySQL数据库的关键知识点 #### 一、引言 在开发基于Qt的应用程序时,连接到MySQL数据库是一项常见的需求。通过这种方式,应用程序能够读取或写入数据,从而实现更强大的功能。本文将详细介绍如何在Qt...

    Qt连接mysql数据库足球项目

    在本项目中,“Qt连接mysql数据库足球项目”是一个利用C++和Qt框架开发的应用程序,主要目的是管理和操作与足球相关的数据库。这个实验项目涉及到的主要知识点包括: 1. **Qt框架**:Qt是一个跨平台的C++图形用户...

    Qt Mysql linux驱动编译.docx

    这个库文件是Qt连接MySQL数据库所必需的,将其添加到你的应用程序路径中,或者将`plugins/sqldrivers`目录复制到你的应用可执行文件同一目录下,以便Qt能自动发现并加载这个驱动。 在实际开发中,确保你的系统环境...

    QT 5.9.2 连接访问Mysql数据库

    将该文件去掉名称前面的QT版本之后,替换到 QT安装路径 /gcc_64/plugins/sqldrivers

    Qt 添加MySQL驱动教程(成功版)

    在Qt开发中,连接到MySQL数据库是常见的需求。这篇教程将详细介绍如何在Qt环境中添加MySQL驱动,以便能够成功地与MySQL数据库进行交互。Qt是一个功能强大的C++应用程序框架,而MySQL则是一种流行的开源关系型数据库...

    Qt利用ODBC连接MySQL数据库

    在本文中,我们将深入探讨如何使用Qt框架通过ODBC(Open Database Connectivity)接口连接到MySQL数据库,以此构建一个教务管理系统。首先,让我们了解Qt、ODBC和MySQL的基础知识。 Qt是一个跨平台的C++库,它提供...

    Qt4版本的MySQL数据库驱动

    本篇文章将深入探讨Qt4版本中的MySQL数据库驱动,以及如何在Qt4环境中连接和操作MySQL数据库。 首先,MySQL是一种开源的关系型数据库管理系统,广泛用于Web应用、数据存储和分析等场景。Qt4提供了一个名为"QMYSQL...

    Qt使用MySQL数据库(IM聊天工具)

    接下来,我们需要在Qt项目中包含必要的头文件,例如`#include &lt;QtSql&gt;`,并连接到MySQL数据库。这通常涉及创建一个` QSqlDatabase`对象,然后调用`QSqlDatabase::addDatabase()`方法,传入`"QMYSQL"`作为参数,表示...

    Qt下MySql数据库驱动

    本篇文章将详细探讨如何在Qt环境下配置和使用MySQL数据库驱动,以及相关的编程实践。 首先,要使用Qt的MySQL驱动,你需要确保已经安装了MySQL数据库服务器,并且在系统中安装了适用于Qt的MySQL驱动程序。在Linux...

    Qt6 Mysql8 windows驱动

    1.Linux和windows差别:系统PATH、各路径、mysql包含库名称 2. 预先准备mysql,这里的dll是用qt6.3和mysql8.0.28编译的 3. cmake --install自动安装的位置不是正常工作需要的,自己手工拷贝即可,比如我这里是qt\...

    编译好的qt4.7.3 mysql驱动

    "编译好的qt4.7.3 mysql驱动"是一个专门为Qt 4.7.3版本准备的MySQL连接驱动,它使得Qt应用程序能够无缝地与MySQL数据库进行交互。本文将详细介绍这个驱动及其相关知识点。 1. **Qt框架** Qt是一个跨平台的C++图形...

    Qt和mysql连接方法及库

    下面将详细阐述如何在Qt中连接和操作MySQL数据库。 首先,为了在Qt项目中使用MySQL,我们需要安装必要的库。在Windows系统中,这通常意味着下载MySQL Connector/C++,这是MySQL官方提供的用于C++应用的API。将库...

Global site tag (gtag.js) - Google Analytics