加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

qt连接sqlite数据库(win下Qt5)

发布时间:2020-12-12 20:11:42 所属栏目:百科 来源:网络整理
导读:1.下载sqlite和sqlite管理工具sqlitestudio,两者都是不需要安装的,解压即可。 sqlite下载地址:http://www.sqlite.org/download.html window下需要下载下面的,其中command-line shell 链接是sqlite的使用方法。 2.创建数据库,此处我将数据库名设为test,

1.下载sqlite和sqlite管理工具sqlitestudio,两者都是不需要安装的,解压即可。

sqlite下载地址:http://www.sqlite.org/download.html

window下需要下载下面的,其中command-line shell 链接是sqlite的使用方法。

2.创建数据库,此处我将数据库名设为test,此处我通过控制台cmd创建数据库和表,并插入数据,如果没设置环境变量的话,需要到你解压的目录去运行,如下:

生成的数据库文件(此文件是在create table后生成的)如下:

3.拷贝数据库test到项目目录下,注意是放到qtcreator生成的debug或release目录下(需要先构建下才会生成这个目录),具体是看你的模式,如我的项目名是untitle14,debug模式下,就是将数据库test拷贝到如下目录:

4.向pro文件中添加: QT+=sql。

5.链接数据库并读取其中表数据代码如下:

#include <QApplication>
#include <QMessageBox>
#include <iostream>

#include <QSqlDatabase>
#include <QtSql>


int main(int argc,char *argv[]){
    QApplication app(argc,argv);
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
    std::cout<<"begin sqlite"<<std::endl;
    db.setDatabaseName("test");
    if ( !db.open()){
        QMessageBox::critical(NULL,QObject::tr("Collection"),QObject::tr("failed to connect to database!"));
        return 0;
    }//if
    QSqlQuery query;
    query.exec("select * from student");
    while(query.next()){
        static int i=1;
        int ele0=query.value(0).toInt();
        QString ele1=query.value(1).toString();
        qDebug()<<i++<<":"<<ele0<<"|"<<ele1;
    }//while
    std::cout<<"end sqlite"<<std::endl;
    db.close();
    db.close();
    return app.exec();
}


6.运行结果如下:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读