1 sqlite3操作编程

问题1 驱动无法加载

QSqlDatabase: QSQLITE driver not loaded

解决办法将Qt自带安装目录下的sql文件拷贝到可执行文件目录下。


2 连接数据库

//1.检查数据库的连接是否存在if (QSqlDatabase::contains("qt_sql_default_connection")){db = QSqlDatabase::database("qt_sql_default_connection");}else{db = QSqlDatabase::addDatabase("QSQLITE");}db.setDatabaseName(file_db);if (!db.open()){QMessageBox::about(this, "database", "database open failed");}if (db.open()){qDebug() << file_db <<  " opened ok.";}

3 查询数据库

//2 查询数据库,获取所有的数据信息.//各种操作QSqlQuery query(db);query.prepare("SELECT * FROM nudt_dev");if (!query.exec())qDebug() << query.lastError();else{QSqlRecord rec = query.record();int cols = rec.count();/*    for (int c = 0; c<cols; c++)qDebug() << QString("Column %1: %2").arg(c).arg(rec.fieldName(c));*///查询结果填充到tableWidget中.while (query.next()){int id = query.value(0).toInt();QString name = query.value(1).toString();int cb_type_index = query.value(2).toInt();QString combat_radius = query.value(3).toString();QString speed = query.value(4).toString();int cb_scout_cap_index = query.value(5).toInt();QString armored_car_low_loss = query.value(6).toString(); //轻损QString   armored_car_mid_loss = query.value(7).toString();//中损QString   armored_car_high_loss = query.value(8).toString();//重损QString truck_low_loss = query.value(9).toString();QString truck_mid_loss = query.value(10).toString();QString truck_high_loss = query.value(11).toString();QString build_low_loss = query.value(12).toString();QString  build_mid_loss = query.value(13).toString();QString    build_high_loss = query.value(14).toString();int cb_build_struct_index = query.value(15).toInt();int cb_build_materials_index = query.value(16).toInt();int cb_build_thickness_index = query.value(17).toInt();//表填充.init_table_widget(name, cb_type_index, combat_radius, speed, cb_scout_cap_index, armored_car_low_loss,armored_car_mid_loss, armored_car_high_loss, truck_low_loss, truck_mid_loss, truck_high_loss,build_low_loss, build_mid_loss, build_high_loss, cb_build_struct_index, cb_build_materials_index, cb_build_thickness_index);}}

4 数据库插入

QString sql = "insert into nudt_dev values (";sql += "NULL";sql += ",";sql += "'" + name + "',";sql += QString::number(cb_type->currentIndex()) + ",";sql += combat_radius + ",";sql += speed + ",";sql += QString::number(cb_scout_cap->currentIndex()) + ",";sql += armored_car_low_loss + ",";sql += armored_car_mid_loss + ",";sql += armored_car_high_loss + ",";sql += truck_low_loss + ",";sql += truck_mid_loss + ",";sql += truck_high_loss + ",";sql += build_low_loss + ",";sql += build_mid_loss + ",";sql += build_high_loss + ",";sql += QString::number(cb_build_struct->currentIndex()) + ",";sql += QString::number(cb_build_materials->currentIndex()) + ",";sql += QString::number(cb_build_thickness->currentIndex()) ;sql += ")";qDebug() << "sql:" << sql;query.prepare(sql);if (!query.exec()){qDebug() << query.lastError();}else{qDebug() << "insert ok.";}

27.Qt操作sqlite3数据库相关推荐

  1. Qt操作SQLite数据库的三种方式

    Qt访问Sqlite数据库的三种方式(即使用三种类库去访问),分别为QSqlQuery.QSqlQueryModel.QSqlTableModel,对于这三种类库,可看为一个比一个上层,也就是封装的更 ...

  2. Golang操作sqlite3数据库教程

    Golang操作sqlite3数据库教程 本文介绍sqlite数据库,如何使用sqlite3包操作轻量级关系型数据库. sqlite概述 sqlite是嵌入式关系型数据库引擎,官方描述为自包含的.无服 ...

  3. QT操作sqlite数据库汇总

    QT自带的QSqlite数据库中实现id主键自增长 QSqlite是QT自带的轻量级数据库,使用起来非常方便,对系统环境也没有任何的环境要求,可移植性非常好,适合数据量不是太大,要求不是太高的程序.本 ...

  4. QT之SQLITE3数据库

    目录 一.数据库简介 二.Linux下使用sqlite3 三.SQL语句 1.Create Table 2.Drop Table 3.Truncate Table 4.Insert Into 5.Se ...

  5. QT操作Sqlite数据库修改字段名称和删除字段

    目录 一.QSqlDatabase概述 二.QSqlDatabase模块的使用 三.修改字段名称和删除字段 1.sql语句执行步骤 2.程序执行 一.QSqlDatabase概述 QSqlDataba ...

  6. sqlite3常用命令以及django如何操作sqlite3数据库

    一.如何进入sqlite3交互模式进行命令操作? 1.确认sqlite3是否已经安装 进去python命令行,执行 >>> import sqlite3 >>> 没 ...

  7. node sqlite 插入数据_使用 Sequelize 操作 Sqlite3 数据库

    0x01 Sequelize 是什么? Sequelize 是一个基于 Promise 的 Node.js ORM,目前支持 Postgres.MySQL.SQLite 和 Microsoft SQL ...

  8. 08.QT中sqlite3数据库基本操作

    Qt版本数据库操作 1 创建项目时选择sql模块 2 简易效果图如下 3 代码如下图所示 #include "SqliteDemo.h" #include <QtSql/QS ...

  9. 【iOS10】使用XCode8、Swift3. 操作SQLite3数据库的步骤(包括配置环境和SQLite语句)

    一.配置使用SQLite时的Swift框架工程环境 步骤如下: 1.点击项目名称 - Linked Frameworks and Libraries - "+" - 搜索" ...

最新文章

  1. 10.05 最初对Linux的了解,对Shell的认识
  2. 划重点!《企业数字化升级之路》白皮书讲了哪些干货?
  3. requirednew基于xml配置日志不回滚_Mybatis 系列 4:引入日志框架
  4. 小米一键上锁工具_小米首款高端全自动智能锁火热预售中,一触开启全自动时代...
  5. C#9.0 每个开发人员都必须知道的4个特性
  6. 零基础 5 分钟上手,程序员喜提 AIoT 新利器!
  7. vbs 获取计算机主机名,vbs 获取主机名
  8. Android第三十三期 - Dialog的应用
  9. 关于郭天祥51开发板无法烧敲代码问题的解决(Prolific USB-to-Serial Comm Port)
  10. 你使用过哪些数据分析的方法?
  11. 《Java开发实战经典》笔记
  12. linux下解压zip文件命令
  13. mysql中乘积函数_excel乘积函数之dproduct函数的使用和例子
  14. 大一新生HTML期末作业 个人网页王嘉尔明星介绍网页设计与制作
  15. 折半插入排序顺序结构
  16. 两化融合的定义和两化融合如何认定
  17. 易特科:世界医学泰斗联姻中国IT精英
  18. MSTP多实例配置实验
  19. 【Gstreamer】PUSH/PULL mode生动解析
  20. Latex设置页面横置

热门文章

  1. Kafka 消息序列化反序列化
  2. python pdfminer解析pdf文件的每一行,得到每一行的坐标与每个字符的坐标
  3. pandas时间序列与自回归ARIMA模型
  4. java 虚拟机类型的卸载_《深入理解Java虚拟机》:类加载和初始化(二)
  5. 计算机软考可以直接高级吗,计算机软考没有中级能考高级吗
  6. XAF-UI元素概述
  7. P2057 [SHOI2007]善意的投票 最小割
  8. JSON与Delphi Object的互换
  9. 第7篇 WPF C# 怎样定义类及其接口
  10. 【转】MS SQL Sever 远程安装导入数据演示(图)