Qt5 操作 Sqlite3实例

前端之家收集整理的这篇文章主要介绍了Qt5 操作 Sqlite3实例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

sqlite3 在启动的时候 就需要指明 数据库名称~

Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\Users\han>f:

F:\>cd F:\QtProjects\build-sqlitetest-Desktop_Qt_5_5_1_MinGW_32bit-Debug\debug

F:\QtProjects\build-sqlitetest-Desktop_Qt_5_5_1_MinGW_32bit-Debug\debug>sqlite3
mydb.db
sqlite version 3.12.0 2016-03-29 10:14:15
Enter ".help" for usage hints.
sqlite> .tables
test
sqlite> select * from test;
1|test
sqlite>





mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<QsqlDatabase>
#include<QDebug>
#include<QsqlQuery>
#include<QMessageBox>
#include<QString>
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //|设置数据库驱动名称
    QsqlDatabase database=QsqlDatabase::addDatabase("QsqlITE");
    //|设置数据库名
 database.setDatabaseName("F:\\QtProjects\\build-sqlitetest-Desktop_Qt_5_5_1_MinGW_32bit-Debug\\debug\\mydb.db");
   //|看是否能正确打开
 if(!database.open())
    {
      //  qDebug()<<database.lastError().text();
        qDebug()<<"打开失败";
    }else{
        qDebug()<<"数据库打开成功!";
    }
  //|执行sql
    QsqlQuery query;
    query.exec("SELECT * FROM test");
    //|返回第一条
    /*******
     *  exec返回的是数据集 需要
     * 用 query.first()获取第一条
     * 或者 while(query.next())获取全部~~
      *
      ***/
    if(query.first())
    {
    QString s=query.value(0).toString();
    QMessageBox::about(this,"id",s);
    QString z=query.value(1).toString();
    QMessageBox::about(this,"值",z);
    };
}

MainWindow::~MainWindow()
{
    delete ui;
}


猜你在找的Sqlite相关文章