QT链接数据库
2018-06-17 22:45:09来源:未知 阅读 ()
在介绍QT与数据的链接问题上,我在这里就不介绍关于QT环境与mysql、sqlite3环境的安装步骤了,以下的所有的操作都是建立在你已经安装了所有环境的基础上的。好的,那我们就具体来看一看QT环境中怎么与数据进行链接
一、QT链接sqlite3:
QT链接sqlite3比较简单,比如你在你的计算机上已经创建了一个叫users的数据库,这时你需要在QT创建一个项目,在进行数据库的链接之前需要在工程文件(也就是你的.pro文件)中添加
QT += sql
他表示在QT中增加对数据的支持,接下来在项目中增加如下代码:
1 db = QSqlDatabase::addDatabase ("QSQLITE"); 2 db.setDatabaseName ("users"); 3 if(!db.open ()){ 4 qDebug() << db.lastError ().text (); 5 }else{ 6 qDebug() << "open database sucessful"; 7 }
当然这边的db是声明在头文件的一个QSqlDatabase的一个类型,这样如果你按上边的写法去做的话,你会发现,你打开数据是100%成功,因为,在打开数据的时候,如果没有他会在你的项目的构建文件中默认创建一个为空的users的数据库文件,如下图:
所以你必须要将操作的数据库文件放到该目录下就可以了。。。
二、QT链接mysql数据库
因为mysql数据库的操作是无法将数据库文件放到构建目录下的,所以他和sqlite3链接QT有些许的不同,QT链接mysql的的代码为:
1 db = QSqlDatabase::addDatabase ("QMYSQL"); //mysql的数据库驱动 2 db.setUserName ("root"); //设置操作数据库用户名 3 db.setPassword ("12345"); //用户密码 4 db.setHostName ("127.0.0.1"); //设置主机名,我们这边测试使用本机地址 5 db.setDatabaseName ("wyf"); //设置操作的数据库名字 6 db.setPort (33333); //设置端口号(一般默认为3306,我进行了手动的更改) 7 if(!db.open()){ 8 qDebug() << db.lastError ().text (); 9 }else{ 10 qDebug() << "open database sucessful"; 11 }
你会发现链接不上mysql数据库,会有如下的提示:
QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7 "Driver not loaded Driver not loaded"
这时你需要把mysql的安装路径,找到mysql的驱动程序libmysql.dll
将他拷贝到你的项目中的可执行文件的目录下:
接下来,再次运行程序,发现已经可以链接上了。。。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- C++ 函数和链接性 2020-05-18
- C++ 静态持续变量 2020-05-10
- gcc/g++ 链接顺序注意事项 2020-04-20
- G++编译链接的那些事!G++的特殊使用方法[常用] 2020-04-19
- g++链接gcc编译的库报错“undefined reference to xxx” 2020-04-14
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash