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

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

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

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

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

qt连接sqlite数据库(win下Qt5)_第1张图片

生成的数据库文件(此文件是在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.运行结果如下:

qt连接sqlite数据库(win下Qt5)_第2张图片

 

你可能感兴趣的:(数据库,sqlite,sqlite,qt,qt5,qt连接sqlite)