QT中怎样连接MYsql数据库,远程连接数据库等
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT中怎样连接MYsql数据库,远程连接数据库等相关的知识,希望对你有一定的参考价值。
参考技术A 1: windows 下登陆mysql 命令行,(1)进入cmd (2) cd mysql 安装路径/mysqlserver5.6/bin(3) 使用命令mysql -u root -p 然后根据提示输入密码 进入命令行
select user(); //显示当前用户
2: 在同一台电脑上利用Qt 访问数据库
(1)显示当前电脑上安装的数据库驱动
QStringList drivers = QSqlDatabase::drivers();
foreach(QString driver, drivers)
qDebug() <<"/t" << driver;
(2)QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL");/对 QMYSQL进行操作,本函数
有第二个参数 连接名
db.setHostName("localhost");//或127.0.0.1 本主机
db.setPort(3306);
db.setDatabaseName("example"); //对数据库example进行操作
db.setUserName("wangxuetao"); //wangxuetao是一个对example数据库有操作权限的账户
db.setPassword("3791948");
于是mysql中增加一个账户可使用
Grant all previliges on *.* to ‘wangxuetao’@’localhost’ identified by
‘3791948’ with grant option;
Flush privileges; //更新
(3)db.open() 函数可由于检测数据库是否连接成功
cout<DBConnection();
2. m_sqlquery = new QSqlQuery("",m_sqldb);//statement 1:connect db with sql
query
3. if(result == R_OK)
4.
5. result = m_sqlquery->exec("INSERT INTO children(fname,age) VALUES('A
nn2',13)");
6. if(!result)
7. qDebug()<<" [OK] "<<"EXEC successed";
8. m_sqlquery->exec("SELECT * FROM children c LIMIT 0,1000");
9. while(m_sqlquery->next())
10.
11. qDebug()<value(0).toString()<value(1).
toString();
12.
13. 本回答被提问者和网友采纳
QT5连接Mysql
摘要
在Qt 5中已经提供了对MySQL数据库的默认支持,要想使用该数据库,需要先进行数据库的安装, 这里我们介绍下在Windows系统中MySQL数据库的安装和简单使用。
Qt如何利用Mysql远程连接数据库?
代码如下:
qDebug()<<QSqlDatabase::drivers();
qDebug()<<QCoreApplication::libraryPaths();
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("10.127.1.13");
db.setUserName("root");
db.setPassword("redhat");
db.setDatabaseName("test");
bool bRet = db.open();
if (bRet == false)
{
qDebug()<< "error oepn database" << db.lastError().text();
exit(0);
}
qDebug() << "open database success";
会有如下问题:
Mysql驱动加载失败,如何解决?
下载连接的驱动
https://dev.mysql.com/downloads/connector/c/
安装位置默认在
C:\\Program Files (x86)\\MySQL\\MySQL Connector C 6.1\\lib
将mysql安装目录下的libmysql.dll拷贝到qt安装目录下的bin目录下即可
再次运行
以上是关于QT中怎样连接MYsql数据库,远程连接数据库等的主要内容,如果未能解决你的问题,请参考以下文章