本文介绍在Ubuntu12.04 (64 bit) 下使用Qt 4.8.2连接MySQL(Ver 14.14 Distrib 5.5.43)数据库。

1、安装 Qt 和 MySQL

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

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(""); 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数据库的更多相关文章

  1. Windows下Qt连接MySql数据库

    1.设置环境变量,需添加如下的环境变量:      2.打开Qt Command Prompt,输入第一条命令:cd %QTDIR%\src\plugins\sqldrivers\mysql 后按回车 ...

  2. Qt连接mysql数据库遇到QMYSQL driver not loaded

    本文件向各位博友分享一下我在Qt开发过程中,连接mysql数据库时遇到的问题,以及解决的方法,希望对遇到同样问题的博友有所帮助. 工程运行环境:vs2015+Qt5.8 在开发过程中,编写数据库连接函 ...

  3. Windows操作系统下远程连接MySQL数据库

    用Eclipse做一个后台项目,但是数据库不想放在本地电脑,于是买了一个腾讯云服务器(学生有优惠,挺便宜的),装上MySQL数据库,但是测试连接的时候,发现总是连接不是上,但是本地数据库可以连接,于是 ...

  4. Mac下Qt连接MySQL 驱动问题

    Mac OS X下Qt的mySQL driver编译安装 原创文章,采用CC协议发布,转载请注明: 转载自canX.me 本文链接地址: Mac OS X下Qt的mySQL driver编译安装 – ...

  5. python3下django连接mysql数据库

    1.安装pymysql pip install pymysql 有一点需要注意,有的系统(比如ubuntu16.04)同时安装了python2和python3,而比较新的django需要在python ...

  6. CentOS 6.5 下 QT4 连接 mysql 数据库的步骤

    QT4 的安装请参考: CentOS 6.5 下安装 QT 4 mysql 的安装请参考: CentOS 6.5 下安装配置 mysql 1. 预防万一,先安装一下mysql-devel(一定要装!) ...

  7. Mac下php连接mysql数据库失败解决办法

    通过phpmyadmin连接mysql成功,但是通过php连接数据库失败,执行如下php语句 ? 1 @mysql_connect("localhost","root&q ...

  8. ubuntu14.04使用rails连接mysql数据库

    rails自带的sqlite3各方面都不错,但是免费版缺少一个致命功能:加密码!虽说第三方有编译好的二进制版的加密版,但咱先不折腾鸟;直接上mysql吧. ubuntu安装mysql非常简单,先不聊; ...

  9. Linux下C连接MySql数据库

    目录: 一.解决小的问题: 二.大问题,如果你不小心把/usr/lib的所属用户改了导致sudo命令用不了: 三.C连接MySql编程本身: 其实写这个程序真的很简单,十多分钟的事情,只是以前没在Li ...

随机推荐

  1. InfluxDB时序数据库应用场景

    目前了解到的InfluxDB时序数据库应用场景:如在数据库中有很多条记录,有的记录包含了时间字段time和数值字段water_level,有的只有时间字段time SELECT MAX("w ...

  2. ERROR Couldn't find hvm kernel for Ubuntu tree.

    安装python-virtinst git clone https://github.com/palli/python-virtinst.gitcd python-virtinstpython set ...

  3. 2018面向对象程序设计(Java)第3周学习指导及要求

    2018面向对象程序设计(Java) 第3周学习指导及要求(2018.9.11-2018.9.16)   学习目标 适应老师教学方式,能按照自主学习要求完成本周理论知识学习: 掌握Java Appli ...

  4. Python 爬虫常用模块

    1. fake_useragent #pip install fake_useragent requests 2.图展示 pip install pyecharts pip install pyech ...

  5. VBox添加虚拟磁盘挂载

    1. 关闭虚拟机,然后在设置里面选择添加虚拟硬盘 2.lsblk检查存在10G sdb虚拟磁盘 fdisk -l 检查 /dev/sdb 尚没有分区 3.磁盘分区 4.检查分区状况lsblk 5.格式 ...

  6. JMeter学习(十三)目录介绍(转载)

    转载自 http://www.cnblogs.com/yangxia-test JMeter也学了一阵子了,对于基本的操作已了解,再回过头来看看Jmeter的目录,本篇是对于它的目录进行一些简单的介绍 ...

  7. YouTube Cobalt 浏览器支持

    Cobalt介绍: Cobalt浏览器是YouTube公司定制的一款专用浏览器,Cobalt的使命,是在电视机端,使用灵活多变web形式实现流畅的交互操作,从而替代Android,与普通浏览器不同,C ...

  8. 第三章 列表(c)有序列表

  9. 17. Letter Combinations of a Phone Number (backtracking)

    Given a digit string, return all possible letter combinations that the number could represent. A map ...

  10. P3796 【模板】AC自动机(加强版)

    P3796 [模板]AC自动机(加强版) https://www.luogu.org/problemnew/show/P3796 题目描述 有NN个由小写字母组成的模式串以及一个文本串TT.每个模式串 ...