当前位置: 首页 > news >正文

第七天:gec6818开发板QT和Ubuntu中QT安装连接sqlite3数据库驱动环境保姆教程

sqlite3数据库简介

帮助文档 SQL Programming 大多数关系型数的操作步骤:1)连接数据库 多数关系型数据库都是C/S模型 (Client/Server)sqlite3是一个本地的单文件关系型数据库,同样也有“连接”的过程 2)操作数据库 作为程序员,对数据库最常见的操作 就是 增删改查3)关闭数据库 连接也是一种资源,用完记得释放 Qt中 的数据库功能是放在一个单独的模块中,模块名为 sql  所以 如果需要使用Qt的数据库功能,需要在pro文件中 添加如下的指令: QT  +=  sql  Qt的sql模块中包含了大约10几个类型,常用的以下的三个:(1) QSqlDatabase 用于处理数据库的连接,包括 创建连接对象、设置连接属性、关闭连接(2) QSqlQuery用于执行SQL语句(3) QSqlError用于处理数据库错误,提供可读的错误信息 连接数据库的典型代码://初始化连接对象,使用静态函数addDatabase,参数是数据库类型 QSQLITE -- sqlite3db = QSqlDatabase::addDatabase("QSQLITE");//设置数据库名,建议带路径,如果存在,直接打开,如果不存在,则自带创建db.setDatabaseName("../test.db");//打开连接, 成功或者失败,给出相应的提示对话框bool ok = db.open();if( !ok ){QMessageBox::information( this, "tip", db.lastError().text() );return ;}QMessageBox::information(this, "tip", "connect db success! ");执行SQL语句的典型代码://创建用来执行SQL语句的对象QSqlQuery query( db );//准备SQL语句QString createsql = QString( "select username, passwd from t_user where username='%1';").arg(ui->lineEdit->text());qDebug() << createsql;//执行SQL语句if( !query.exec( createsql ) ){qDebug() << "select error : " << query.lastError().text();return ;}//QMessageBox::information( this, "提示", "select success! ");//遍历结果集while( query.next() ){//value用来获取一条记录(行)的列的值,可以使用索引(下标),也可以使用列名//value返回的是一个共用体,必须转换成该列的值真正的类型才来使用QString username = query.value(0).toString();QString passwd = query.value("passwd").toString();qDebug() << username << " -- " << passwd;}

Ubuntu和gec6818开发板一般都会自带sqlite3数据库驱动,所以不需要另外安装驱动,只需要安装sqlite3数据库即可。

1、sqlite3数据库的安装(Ubuntu中)

    1)通过管理工具安装(APT)sudo apt-get install sqlite3 sudo apt-get install libsqlite3-devsudo apt-get install sqlitebrowser 2)通过源码包进行安装 (安装包在文章底部下载)(1)将 源码包 拷贝到 家目录下 ( /home/china/ )cp  sqlite-snapshot-201803271513.tar.gz  /home/china/ (2)解压 tar -zxvf  sqlite-snapshot-201803271513.tar.gz(3)进入源码目录 cd  sqlite-snapshot-201803271513 (4) 生成Makefile ./configure (5) 编译,生成可执行文件和库文件 make (6) 安装数据库(实质上就是把生成的可执行文件和lib库文件 放到系统相应的路径下)sudo make install  

2、移植到开发板 ----------------(这里直接看第七步就行,我已经提供了编译好的文件,不行的话就自己按步骤执行)

    sqlite3的移植: 移植原理是 在编译环境的机器上 交叉编译好 可执行文件和lib库文件 再把可执行文件和lib库文件 拷贝到开发板的 /bin  /lib  (1)将 源码包 拷贝到 家目录下 ( /home/china/ )cp  sqlite-snapshot-201803271513.tar.gz  /home/china/ (2)解压 tar -zxvf  sqlite-snapshot-201803271513.tar.gz(3)进入源码目录 cd  sqlite-snapshot-201803271513 (4) 生成Makefile ./configure  --host=arm-linux  --prefix=/home/china/sqlite3_arm  --host    指定目标主机的架构 --prefix  指定程序在本机的安装路径(5) 编译,生成可执行文件和库文件 make (6) 安装数据库(实质上就是把生成的可执行文件和lib库文件 放到系统相应的路径下)sudo make install (7) 把相应的文件 下载到 开发板上  (需要的文件在“数据库移植”压缩包内)/home/china/sqlite3_arm/bin/ 把 sqlite3 文件  --》 拷贝到开发板的 /bin 目录下 //记得加权限 chmod 0777 sqlite3/home/china/sqlite3_arm/lib/  libsqlite3.so libsqlite3.so.0libsqlite3.so.0.8.6  把 这3个文件 拷贝到开发板的 /lib 目录下 (有链接文件 不能直接拷贝 )先压缩 再进行传输  sudo tar -zcvf libsqlite3.tar.gz  libsqlite3.so.0.8.6 libsqlite3.so.0  libsqlite3.so

数据库移植压缩包已经打包上传了,有需要下载。

数据库移植

在这里插入图片描述
下面两个是要传到开发板的文件,第一个是Ubuntu中sqlite3数据库安装包

相关文章:

第七天:gec6818开发板QT和Ubuntu中QT安装连接sqlite3数据库驱动环境保姆教程

sqlite3数据库简介 帮助文档 SQL Programming 大多数关系型数的操作步骤&#xff1a;1&#xff09;连接数据库 多数关系型数据库都是C/S模型 (Client/Server)sqlite3是一个本地的单文件关系型数据库&#xff0c;同样也有“连接”的过程 2&#xff09;操作数据库 作为程序员&am…...

自制网页。

文章目录 注:代码中图片等素材均来自网络,侵删 20230920_213831 index.html <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-…...

MySQL单表查询和多表查询

一、单表查询 素材&#xff1a; 表名&#xff1a;worker-- 表中字段均为中文&#xff0c;比如 部门号 工资 职工号 参加工作等 CREATE TABLE worker (部门号 int(11) NOT NULL,职工号 int(11) NOT NULL,工作时间 date NOT NULL,工资 float(8,2) NOT NULL,政治面貌 varchar(10)…...

蓝桥等考Python组别四级006

第一部分:选择题 1、Python L4 (15分) 在Python中,符号“\n”代表( )。 换行空格退格注释正确答案:A 2、Python L4 (15分) 已知大写字母A的ASCII码值为…...

第3章-指标体系与数据可视化-3.2-描述性统计分析与绘图

目录 3.2.1 描述性统计进行数据探索 1. 变量度量类型与分布类型 度量类型 分布类型...

更直观地学习 Git 命令

前言 本文参考于 Learn Git Branching 这个有趣的 Git 学习网站。 在该网站&#xff0c;可以使用 show command 命令展示所有可用命令。 直接访问网站的sandbox。 本地篇 基础篇 git commit git commit将暂存区的修改提交到本地版本库并创建一个新的提交&#xff0c;新提…...

在 Vue 项目中添加字典翻译工具(二)

封装字段翻译组件&#xff0c;可以格式化字典、枚举、字段 优点&#xff1a; 使用简单&#xff0c;一次配置多次使用&#xff0c;缓存降低后端请求次数&#xff0c;扩展性强 没有缓存时造成单页面多次请求解决方法&#xff1a;axios添加缓存请求&#xff0c;防止多次请求&#…...

RDMA Shared Receive Queue(四)

参考知乎文章《RDMA之Shared Receive Queue》&#xff1a;https://zhuanlan.zhihu.com/p/279904125 SRQ SRQ全称为Shared Receive Queue&#xff0c;即共享接受队列。在QP中&#xff0c;SQ用于下发SEND/WRITE/READ等操作&#xff0c;而RQ只用于下发RECV操作&#xff0c;对于本…...

this关键字

作用&#xff1a;出现在成员方法&#xff0c;构造器中代表当前对象的地址&#xff0c;用于访问当前对象的成员变量、成员方法。this出现在 有参数构造器 中的用法 &#xff08;this.成员变量 局部变量&#xff09;this出现在 成员方法 中的用法 &#xff08;this…...

缓存雪崩、缓存击穿、缓存穿透

缓存雪崩 当缓存中大量的键值对同时过期或者Redis宕机了&#xff0c;大量的请求就会直接打到数据库&#xff0c;这种现象就是缓存雪崩 应对策略 有四种&#xff0c;分别是“均匀设置过期时间”、“互斥锁”、“双key策略”、“设置逻辑过期时间&#xff0c;异步更新缓存” …...

Bigemap如何查看历史影像

工具 Bigemap gis office地图软件 BIGEMAP GIS Office-全能版 Bigemap APP_卫星地图APP_高清卫星地图APP 很多人都在寻找历史影像图&#xff0c;这块的需求是非常大&#xff0c;历史影像一般可以用于历史地貌的变迁分析&#xff0c;还原以前的生态场景&#xff0c;对范围面积…...

如何离线安装和使用pymysql操作mysql数据库

一、应用背景 在企业内部网络要使用python操作mysql数据库。然而&#xff0c;python未自带访问MySQL数据库的函数库pymysql&#xff0c;需要另外安装。网上有很多安装pymysql都需要互联网支持。本文主要阐述如何离线安装pymysql,并简要介绍pymysql如何进行mysql操作。 pymysq…...

Prometheus-监控Mysql进阶用法(1)(安装配置)

阿丹&#xff1a; 在开发和生产环境中有可能会出现慢mysql等问题&#xff0c;那么这里就需要我们优秀的程序员来进行监控和解决&#xff0c;那么如何借助云原生的监控系统来完成这个操作呢&#xff1f; 环境描述&#xff1a; 使用一台空白的阿里云服务器2核4G。 服务器基本安装…...

网络安全(黑客技术)自学内容

前言 一、什么是网络安全 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 无论网络、Web、移动、桌面、云等哪个领域&#xff0c;都有攻与防…...

linux centos7 安装mongodb7.0.1 及 mongosh2.0.1

下载数据库并解压 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-7.0.1.tgz tar -zxf mongodb-linux-x86_64-rhel70-7.0.1.tgz #移动到/usr/local/mongo目录 mv mongodb-linux-x86_64-rhel70-7.0.1 /usr/local/mongodbmongosh 命令行下载 #下载命令行…...

c++ | makefile | 编译 | 链接库

简单记一下 看着人家总结的挺好的 点这...

n个骰子掷出m点的概率,C++实现

一.在骰子游戏中&#xff0c;我们会有猜点数的问题。我们该如何用算法来描述呢&#xff1f; 加入我们当前只有一个骰子&#xff0c;我们该如何算概率呢&#xff1f; 我们现在开始推导一下吧&#xff1a; 首先是一个骰子的情况&#xff0c;我们可以简单的知道n个骰子一共可以掷出…...

【JUC系列-08】深入理解CyclicBarrier底层原理和基本使用

JUC系列整体栏目 内容链接地址【一】深入理解JMM内存模型的底层实现原理https://zhenghuisheng.blog.csdn.net/article/details/132400429【二】深入理解CAS底层原理和基本使用https://blog.csdn.net/zhenghuishengq/article/details/132478786【三】熟练掌握Atomic原子系列基本…...

企业专线成本高?贝锐蒲公英轻松实现财务系统远程访问

在办公及信息系统领域&#xff0c;许多企业纷纷采用金蝶等财务管理软件来提升运营效率。以某食品制造企业为例&#xff0c;该企业总部位于广州&#xff0c;并拥有湖北仙桃工厂、广州从化工厂和湖南平江工厂三大生产基地。为提高管理效率&#xff0c;该企业在广州总部局域网内部…...

自学——网络安全——黑客技术

想自学网络安全&#xff08;黑客技术&#xff09;首先你得了解什么是网络安全&#xff01;什么是黑客&#xff01;&#xff01;&#xff01; 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队…...

k8s部署gin-vue-admin框架、gitlab-ci、jenkins pipeline 、CICD

测试环境使用的jenkins 正式环境使用的gitlab-ci 测试环境 创建yaml文件 apiVersion: v1 kind: ConfigMap metadata:name: dtk-go-tiktok-admin-configlabels:app.kubernetes.io/name: dtk-go-tiktok-adminapp.kubernetes.io/business: infrastructureapp.kubernetes.io/run…...

【SpringBoot项目】SpringBoot+MyBatis+MySQL电脑商城

在b站听了袁老师的开发课&#xff0c;做了一点笔记。 01-项目环境搭建_哔哩哔哩_bilibili 基于springboot框架的电脑商城项目&#xff08;一&#xff09;_springboot商城项目_失重外太空.的博客-CSDN博客 项目环境搭建 1.项目分析 1.项目功能&#xff1a;登录、注册、热销…...

互联网医院|互联网医院系统引领医疗科技新风潮

互联网的迅速发展已经改变了人们的生活方式&#xff0c;而医疗领域也不例外。近年来&#xff0c;互联网医院应运而生&#xff0c;为患者和医生提供了更便捷、高效的医疗服务。本文将深入探讨互联网医院的系统特点、功能以及未来的发展方向&#xff0c;为您展现医疗行业的新时代…...

Mock安装及应用

1、安装 npm install mockjs 2、Mock.Random属性 该属性是一个工具类&#xff0c;用于生成各种随机数据。它提供的方法如下&#xff1a; Basic: boolean,natural,integer,float,character,string,range,date,time,datetime,now; Image: image,dataImage; Color: color; Text: p…...

一起来看看UI设计流程详解吧!通俗易懂

UI设计2023 通俗易懂的UI设计流程详解 首先&#xff0c;大家要明确一下范围&#xff1a;一般分为新产品的从0-1和已有产品上新的模块或功能的从0-1&#xff0c;这两个方向的环节和产出物会有比较大的区别。其实在UI设计师介入之前&#xff0c;我们是需要去了解一些大的方向和…...

TikTok营销成功秘籍:ROI指标的黄金法则

在当今数字营销领域&#xff0c;TikTok已经崭露头角&#xff0c;成为了品牌和营销者们争相追逐的热门平台。 然而&#xff0c;要在TikTok上取得成功&#xff0c;不仅需要创意和内容&#xff0c;还需要精确的ROI&#xff08;投资回报率&#xff09;指标来衡量和优化你的营销策略…...

17.适配器模式(Adapter)

意图&#xff1a;将一个类的接口转换为Client希望的另一个接口&#xff0c;使得原本由于接口不兼容而不能一起工作的那些类在一起工作。 UML图 Target&#xff1a;定义Client使用的与特定领域相关的接口。 Client&#xff1a;与符合Target接口的对象协同工作。 Adaptee&#xf…...

leetcode做题笔记154. 寻找旋转排序数组中的最小值 II

已知一个长度为 n 的数组&#xff0c;预先按照升序排列&#xff0c;经由 1 到 n 次 旋转 后&#xff0c;得到输入数组。例如&#xff0c;原数组 nums [0,1,4,4,5,6,7] 在变化后可能得到&#xff1a; 若旋转 4 次&#xff0c;则可以得到 [4,5,6,7,0,1,4]若旋转 7 次&#xff0…...

什么是推挽电路?

推挽电路原理&#xff1a; 可以简单理解为推和拉&#xff1b; 此电路总共用到两个元器件&#xff0c;对应图中的Q1----NPN三极管&#xff0c;Q2----PNP三极管&#xff0c;两个电阻R1和R2起到限流的作用&#xff1b;两个三极管的中间对应信号的输出。 下面就举例说明是如何工作的…...

208.Flink(三):窗口的使用,处理函数的使用

目录 一、窗口 1.窗口的概念 2.窗口的分类 (1)按照驱动类型分 (2)按照窗口分配数据的规则分类 3.窗口api概览 (1)按键分区(Keyed)和非按键分区(Non-Keyed) *1)按键分区窗口(Keyed Windows) *2)非按键分区(Non-Keyed Windows) (2)代码中窗口API的调…...

中国建设银行重庆网站首页/上海百度提升优化

简介 这里我想说的是&#xff0c;程序本身不需要关心表的结构&#xff0c;只需要按照视图定义来取数据或更新数据。 什么是视图 说起视图呢&#xff0c;就是说它相当于一个虚拟的表&#xff0c;你看不到它&#xff0c;但是你可以根据它来更新和操作表&#xff0c;视图中的wi…...

安徽省经工建设集团网站/郑州seo优化

一、时间函数 在使用存储过程&#xff0c;sql函数的时候&#xff0c;会遇到一些对时间的处理。比如时间的获取与加减。这里就用到了sql自带的时间函数。下面我列出这些函数&#xff0c;方便日后记忆&#xff0c;使用。 --getdate 获取当前时间select getdate()--dateadd 原有时…...

无锡企业网站建设/推广关键词如何优化

ls /bin /usr/bin | sort | uniq | less 上面这条命令的实际效果是&#xff1a; 获得 ls /bin /usr/bin 的 output将上述 output 进行 sort (排序)&#xff0c;并去掉重复项 (uniq)将经过以上处理的 output 作为 less 命令的 input&#xff0c;输出在屏幕上相反地&#xff0c;如…...

做安利能开个人网站/优化一下

1.什么是线程?什么是进程?它们之间的关系?简单说一个进程可以由多个线程组成,一个操作系统可以多个进程,它们都是可以同时进行工作的.2.什么是下载?如何多线程进行下载?如何断点续传?广义上说&#xff0c;凡是在屏幕上看到的不属于本地计算机上的内容&#xff0c;皆是通过…...

可以做网站的app/流量精灵app

CentOS 7官方下载地址&#xff1a;官方网站上&#xff0c;CentOS 7提供了三种ISO镜像文件的下载&#xff1a;DVD ISO、Everything ISO、Minimal ISO。以下针对各个版本的ISO镜像文件&#xff0c;进行一一说明&#xff1a;CentOS-7.0-x86_64-DVD-1503-01.iso 标准安…...

佛山微网站建设哪家专业/本地建站软件有哪些

在java1996年发布,当年12月即发布了java bean1.00-A,有什么用呢?通过统一的规范可以设置对象的值(get,set方法),这是最初的java bean;在实际企业开发中,需要实现事务,安全,分布式,javabean就不好用了.sun公司就开始往上面堆功能,这里java bean就复杂为EJB;EJB功能强大,但是太重…...