Ubuntu 15 下 Qt 配置mysql链接及基本操作
序
最近需要在Linux下做一个unix网络编程项目,选择了Ubuntu 最新版本15.04 :
开发环境:Qt 5
数据库: MySQL
安装Qt 和 MySQL
简要介绍一下软件的安装!
- 安装Qt命令
sudo apt-get install qtcreator
- 安装MySQL,我是采用的软件中心选择的开发工具 包括 服务器、客户端、工作台三个软件;然后,在命令行配置root账户密码即可!
默认的MySQL安装之后根用户是没有密码的,所以首先用根用户进入:
$mysql -u root
在这里之所以用-u root是因为我现在是一般用户(firehare),如果不加-u root的话,mysql会以为是firehare在登录。注意,我在这里没有进入根用户模式,因为没必要。一般来说,对mysql中的数据库进行操作,根本没必要进入根用户模式,只有在设置时才有这种可能。
进入mysql之后,最要紧的就是要设置Mysql中的root用户密码了,否则,Mysql服务无安全可言了。
mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";
注意,我这儿用的是123456做为root用户的密码,但是该密码是不安全的,请大家最好使用大小写字母与数字混合的密码,且不少于8位。
这样的话,就设置好了MySQL中的root用户密码了,然后就用root用户建立你所需要的数据库。
安装MySQL驱动
新建项目
在Qt中新建一个控制台项目,在main.cpp内添加代码:
#include <QCoreApplication>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlDriver>
#include <QtSql/QSqlQuery>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
qDebug()<<"available drivers:";
QStringList drivers = QSqlDatabase::drivers();
foreach(QString driver, drivers)
qDebug()<<driver;
QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setPort(3306);
db.setDatabaseName("EasyChat");
db.setUserName("root");
db.setPassword("123456");
if(!db.open()){
qDebug()<<"Unable to open database";
}else{
qDebug()<<"Database connection established";
}
return a.exec();
}
另外,在.pro文件中添加:
QT += sql
基本操作
插入语句
//用户注册对应的,插入用户数据
int insert(const User &user)
{
//执行sql语句
QSqlQuery query;
QString sql = QObject::tr("insert into User(userId,nickname,password,state,registerTime)values('%1','%2','%3','%4','%5')").arg(user.userId)
.arg(user.nickname)
.arg(user.password)
.arg(user.state)
.arg(user.registerTime);
qDebug()<<sql;
bool ret = query.exec(sql);
qDebug()<<"插入操作结果ret = "<<ret;
if(ret)
return SUCCESS;
else
return FAILED;
}
查询操作
这里写代码片
Ubuntu 15 下 Qt 配置mysql链接及基本操作的更多相关文章
- 在Ubuntu 15下搭建V/P/N服务器pptpd安装和配置
在Ubuntu 15下搭建VPN服务器pptpd安装和配置 在ubuntu下配置vpn的方式有很多种,其中比较常见的是pptpd,它配置简单,但是安全性不高,不过对于一般使用来说足够了,我按照程搭建了 ...
- (转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记
Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记 Linux下配LMAP环境,花了我好几天的时间.之前没有配置过,网上的安装资料比较混乱,加上我用的版本问题,安装过程 ...
- Mac下Qt连接MySQL 驱动问题
Mac OS X下Qt的mySQL driver编译安装 原创文章,采用CC协议发布,转载请注明: 转载自canX.me 本文链接地址: Mac OS X下Qt的mySQL driver编译安装 – ...
- Ubuntu 系统下暴力卸载 MySQL
一.概述 MySQL 出问题了,正常的 start.stop 不起作用. apt-get remove mysql-server apt-get remove mysql-client 上面这些命令不 ...
- CentOS6.5下安装配置MySQL
CentOS6.5下安装配置MySQL,配置方法如下: 安装mysql数据库:# yum install -y mysql-server mysql mysql-deve 查看mysql-server ...
- Windows下安装配置MySQL
Windows下安装配置MySQL的基本步骤 一.MySQL下载 MySQL官方下载地址https://dev.mysql.com/downloads/mysql/5.7.html#downloads ...
- Ubuntu 15.04 安装配置 Qt + SQLite3
序 最近需要在Ubuntu下使用Qt开发项目,选择简单小巧的SQLite数据库,现将安装配置以及简单操作记录如下,以便日后查阅. 安装Qt CMake和Qt Creator是Linux下开发C++程序 ...
- Ubuntu 15.04 安装配置Apache和mysql的方法
前 言 上篇海面特效的博文结尾提到了SideFX开发的HQueue分布式集群,配置HQueue首先需要安装mysql,所以今天先分享一下如何在Ubuntu系统中安装mysql和Apache: Ubun ...
- Ubuntu下 QT添加外部链接库(.so文件)示例
参考:https://blog.csdn.net/KKALL1314/article/details/81915354 https://forum.qt.io/topic/80301/file-not ...
随机推荐
- NET Core项目
在IIS上部署你的ASP.NET Core项目 概述 与ASP.NET时代不同,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器(Kestrel) ...
- 《javascript设计模式》笔记之第十二章:装饰者模式
一.装饰者模式的作用 为函数或者对象的方法添加一些行为. 二.装饰者模式的原理 装饰者模式不是直接修改对象,而是以要修改的对象为基础,新建一个对象.不过这个新建的对象看起来就像在原对象的基础上 ...
- A. Arya and Bran
A. Arya and Bran time limit per test 1 second memory limit per test 256 megabytes input standard inp ...
- Java热启动
1.在项目中的pom.xml中添加 <dependency> <groupId>org.springframework.boot</groupId> <art ...
- (转载)23种设计模式的uml图表示及通俗介绍
转载自: https://www.cnblogs.com/ningskyer/articles/3615312.html 0.分类 创建型模式 1.FACTORY2.BUILDER3.FACTORY ...
- Android中当item数量超过一定大小RecyclerView高度固定
Android中当item数量超过一定大小时,将RecyclerView高度固定 方法1 直接通过LayoutParams来设定相应高度 ViewGroup.LayoutParams lp = rv. ...
- 【深度精讲】JFinal中的Ret和Kv工具类的区别,你用对了吗?
在JFinal中有两个类Map的工具类,一个是有状态的Ret,一个是无状态的Kv,各种自己的应用场景,你用对了吗? 下面我们从多个方面来探究一下,JFinal针对这两个类的设计: 一.位置-com.j ...
- escape,encodeURI,encodeURIComponent 之间的区别和使用
escape(目前已经被淘汰)是对字符串(string)进行编码(而另外两种是对URL),不会对下列字符编码 ASCII字母 数字 @*/+ 最关键的是,当你需要对URL编码时,请忘记这个方法,这 ...
- 【虚拟机-磁盘管理】理解及快速测定 Azure 虚拟机的磁盘性能
随着越来越多的用户将生产系统迁移到 Azure 平台的虚拟机服务中,Azure 虚拟机的性能愈发被关注.传统的数据中心中,我们通常使用 CPU,内存,存储和网络的性能来衡量生产压力.特别是对于 IO ...
- Python3中requests库学习01(常见请求示例)
1.请求携带参数的方式1.带数据的post data=字典对象2.带header的post headers=字典对象3.带json的post json=json对象4.带参数的post params= ...