Unity接入SQLite (二):SQL常用命令

在上一篇上《Unity接入SQLite (一):SQLite介绍-CSDN博客》中已经介绍了如何在Unity中接入SQLite插件,并且创建了一个db文件。如何进行数据库的读取,其中SQL命令非常重要

1.SQL支持的数据类型

SQL数据类型是用来定义数据库中存储的数据的类型,其支持多种数据类型。以下是SQLite中常用的数据类型: 

存储类型概述
NULL空值类型,表示缺少值或未知值。
INTEGER

整数类型,表示整数,可以是1, 2, 3, 4, 6, 或 8字节长度的整数。例如,年龄、身份Id等。 

REAL浮点数类型,表示带有小数部分的数字。例如,身高、体重等。
TEXT文本类型,表示文本字符串,用于存储字符串数据。例如,姓名、地址等。
BLOB二进制数据类型,用于存储二进制数据(如图像、音频、视频等)

注意:SQLite是一种动态类型的数据库,这意味着你可以使用任何数据类型来存储任何类型的数据,但SQLite会根据该列中存储的实际值的类型进行自动转换。

2.SQL常用命令

下面是一些常用的SQLite命令:

1.创建数据库,创建一个名为Database的SQLite数据库文件

sqlite3 Database.db

2.创建表,在Database.db数据中创建一个名为tableNam的表格,包含字段和字段的数据类型

CREATE TABLE tableName (column1 type1,column2 type2,.....columnN typeN)

3.检查表格是否存在,检查名为tableName的表格是否存在

SELECT COUNT(*) FROM sqlite_master WHERE type ='tableName' and name=tableName

4.删除表格,删除名为tableName的表格

DROP TABLE tableName

注意:使用此命令时要特别注意,因为一旦一个表被删除,表中所有信息也将永远丢失。

5.插入数据,在名为tableName的表格中插入相应字段的值

INSERT INTO tableName (column1, column2, ...) VALUES (value1, value2, ...)

6.更新数据,在名为tableName的表格中更新相应字段的值

UPDATE tableName SET column1 = value1, column2 = value2, ..., columnN = valueN

7.查询数据,在名为tableName的表格中根据条件查询相应数据

SELECT column1, column2, ... FROM tableName WHERE condition

8.查询tableName的表格所有数据

SELECT * FROM {tableName}

3.示例

下面就以保存学生数据为例创建一个数据库,保存班级中所有的学生数据,主要包含,学号Id、姓名、年龄、身高等。

1.创建一个class的数据库

sqlite3 class.db

2.创建一个名为table1的表格,包含学号、名称、年龄、身高,具体定义如下。

含义数据类型
Id学生学号,也是全局唯一INTEGER,整数类型
Name学生名称TEXT,文本类型
Age年龄INTEGER,整数类型
Height身高REAL,浮点数类型

CREATE TABLE table1 (Id INTEGER,Name TEXT,Age INTEGER,Height REAL)

3.插入数据,将表格中3个学生的数据插入到数据库中

IdNameAgeHeight
1zhangsan10140.2
2lisi11142.0
3wangwu10

141.5

将上述表格中的学生数据插入到数据库中。 

INSERT INTO table1 (Id, Name, Age,Height) VALUES (1, zhangsan, 10,140.2)

INSERT INTO table1 (Id, Name, Age,Height) VALUES (2, lisi, 11,142.0)

INSERT INTO table1 (Id, Name, Age,Height) VALUES (3, wangwu, 10,141.5)

4.更新数据库

由于“zhangsan”同学的年龄数据错误,现在需要更改为11。

UPDATE table1 SET Age = 11, WHERE Id = 1

以上就是常用SQLite命令以及示例,下一篇《Unity接入SQLite (三):C#封装SQL命令-CSDN博客》主要介绍对以上各种SQLite命令的封装。

希望对大家有帮助,如有疑问评论区讨论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/701696.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二分图匹配详解

二分图的原始模型及相关概念 二分图又称作二部图,是图论中的一种特殊模型。 设G(V,E)G(V,E)是一个无向图。 如顶点集V可分割为两个互不相交的子集(A, B),并且图中每条边(i,j)所关联的两个顶点 i 和 j 就都分属两个不…

定时任务处理-Spring Task

目录 1 前言 2 cron表达式 2.1 相关概念的介绍 2.2 举个例子(白雪警告) 2.3 使用网站自动生成 3 Spring Task的使用 3.1 导入依赖坐标 3.2 开启任务调度 3.3 自定义定时任务类 1 前言 当我们需要处理一些定时任务的时候就需要用到我们的Spring Task,接下来…

(done) 两个矩阵 “相似” 是什么意思?

参考视频:https://www.bilibili.com/video/BV1zu411673J/?spm_id_from333.337.search-card.all.click&vd_source7a1a0bc74158c6993c7355c5490fc600 参考资料:https://baike.baidu.com/item/%E7%9B%B8%E4%BC%BC%E7%9F%A9%E9%98%B5/10369874?frge_a…

算能RISC-V通用云编译飞桨paddlepaddle@openKylin留档

尝试一在riscv里编译飞桨。 先总结: 下载飞桨代码,参照pr修改代码 然后编译 cmake ../ -DWITH_GPUOFF -DWITH_RISCVON make -j 16 TARGETRISCV64_GENERIC 编译好后安装: pip install paddlepaddle-0.0.0-cp38-cp38-linux_riscv64.whl -…

Opencv(C++)学习 ARM上引用opencv报相关头文件找不到

简单问题记录,C 与C互相引用时应该多注意类似问题。 问题描述:在项目中,建立了一个interface.h提供了一个C语言兼容的接口void work(),并在对应的interface.cpp中使用OpenCV完成相关处理实现。在PC端测试时,main.cpp成…

【HTML/CSS/JavaScript-编程指南】

HTML/CSS/JavaScript-编程指南 ■ HTML/CSS/JavaScript简介■ HTML/CSS/JavaScript学习网站■ VScode■ VSCode编写HTML■ VSCode编写CSS■ VSCode编写JavaScript ■ 语法■ HTML语法■ CSS语法■ JavaScript 语法 ■ HTML/CSS/JavaScript简介 HTML(全称 Hypertext…

小波变换模拟

小波变换是一种信号处理技术,通过在时间-频率域中使用基于小波的函数进行信号分析。小波变换在处理非平稳信号和图像时特别有用,可以将信号分解为不同频率的成分。它在数据压缩、去噪、特征提取等领域有广泛应用。 MATLAB中提供了用于二维离散小波变换的…

css4浮动+清除浮动

浮动 一.常见网页布局1.三种布局方式2.布局准则 二.浮动(float)1.好处2.概念3.三大特性4.使用5.常见网页布局模板6.注意点 三.清除浮动1.why2.本质3.语法4.四种way(后三个都是给父级添加)清除浮动总结 一.常见网页布局 1.三种布局…

终端启动jupyter notebook更换端口

一、问题描述 如果尝试在端口 8889 上启动 Jupyter Notebook 但最终启动在了 8890 端口,这通常意味着 8889 端口已经被占用。要解决这个问题,可以尝试以下几种方法来关闭占用 8889 端口的进程。 1. 查找并终止占用端口的进程 首先,需要找出…

课时45:表达式_表达式_字符串表达式

3.2.3 字符串表达式 学习目标 这一节,我们从 基础知识、简单实践、小结 三个方面来学习。 基础知识 简介 所谓的字符串表达式,主要是判断 比较运算符 两侧的值的内容是否一致,由于bash属于弱类型语言,所以,默认情况…

【课程作业】提取图中苹果的面积、周长和最小外接矩形的python、matlab和c++代码

提取图中苹果的面积、周长和最小外接矩形 在图像处理中,提取对象的关键属性是常见的任务之一。本文将演示如何使用三种流行的编程语言——Python、Matlab和C,利用相应的图像处理库(OpenCV或Matlab内置函数)来提取图像中苹果的面积…

Java8 Stream API 详解:流式编程进行数据处理

🏷️个人主页:牵着猫散步的鼠鼠 🏷️系列专栏:Java全栈-专栏 🏷️个人学习笔记,若有缺误,欢迎评论区指正 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默&…

切比雪夫(最小区域法)平面拟合算法

欢迎关注更多精彩 关注我,学习常用算法与数据结构,一题多解,降维打击。 本期话题:切比雪夫(最小区域法)平面拟合算法 相关背景和理论 点击前往 主要介绍了应用背景和如何转化成线性规划问题 平拟合输入和…

Vue2:多级路由案例

一、情景说明 上一节,我们学习了Vue中的路由功能 但是,只是基础的一级路由 在实际生产中,路径不可能只有一级,一般都有3,4层级 二、案例 1、修改路由器文件 index.js 新增两个组件 这里实现二级路由配置 关键配置:…

命题逻辑|析取、合取和蕴含到底什么意思

如是我闻:在逻辑学中,“析取”、“合取”和“蕴含”这些术语的中文翻译是有其逻辑和哲学基础的,它们准确地反映了这些逻辑操作的本质。虽然他们被翻译的很高级,但并不能让人一下子就明白。 析取 (Disjunction) 原理:…

【C++精简版回顾】8.const

1.const数据成员 &#xff08;1&#xff09;const数据成员必须使用初始化参数列表 &#xff08;2&#xff09;不能修改 &#xff08;3&#xff09;不能修改必须初始化 class MM { public:MM() {}MM(int age, string name) :age(age), name(name) {}~MM() {cout << "…

SpringBoot和ApiFox整合快速上手

前置&#xff1a;IDEA版本IntelliJ IDEA 2023.2.4&#xff0c;Apifox 2.5.6 安装插件&#xff1a;Apifox Helper1.2.1 目录 1.文档生成 2.提取登录接口token 1.文档生成 把密钥配置到 导入成功:文档就会出现 2.提取登录接口token 之后我们再使用的时候&#xff0c;只需要配置…

面试整理(昆明)去面试就更新

1.MyBatis与MyBatis-Plus的区别&#xff1f; MyBatis和MyBatis-Plus都是Java语言中非常常用的ORM框架&#xff0c;二者有以下区别&#xff1a; 1.实现方式不同 MyBatis是基于XML或注解方式进行数据库操作的持久化框架&#xff0c;它提供了简单的CRUD操作及动态SQL生成等功能。…

五个使用Delphi语言进行开发的案例

案例一&#xff1a;学生信息管理系统 某学校需要开发一个学生信息管理系统&#xff0c;用于记录学生的基本信息、成绩和考勤情况等。开发者使用Delphi语言进行开发&#xff0c;设计了一个包含多个窗体的应用程序。主窗体用于展示学生的列表和基本信息&#xff0c;其他窗体则用…

2024.2.25 -ElasticSearch 进阶

倒排索引 Elasticsearch的倒排索引机制是通过将文档中出现的词汇与它们所在的文档ID关联起来&#xff0c;实现快速查找包含特定词汇的文档。下面是一个具体的例子来说明倒排索引的工作原理&#xff1a; 假设我们有一个简单的文章集合&#xff0c;包含以下三篇文章&#xff1a…