![](https://img-blog.csdnimg.cn/2021040120253983.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
SQLite学习
文章平均质量分 77
是学习也是整理,会把之前写的笔记慢慢都发出来。
沐左21
基础不牢,地动山摇。
展开
-
SQL学习二十、SQL高级特性
创建订单表的时候,指定orderNo具有唯一约束。原创 2022-10-31 11:35:11 · 608 阅读 · 1 评论 -
SQL学习十九、使用游标
游标(cursor)是一个存储在 DBMS 服务器上的数据库查询, 它不是一条 SELECT 语句,而是被该语句检索出来的结果集。在存储了 游标之后,应用程序可以根据需要滚动或浏览其中的数据。我们通常的检索操作会返回一组称为结果集的行,如那么如何在DBMS中获取游标呢?原创 2022-10-31 11:34:18 · 741 阅读 · 0 评论 -
SQL学习十八、在SQL中使用条件逻辑
在SQL中使用条件逻辑涉及到的关键字有:case when…then…else…end;以case开头,end结束。when和then相当于“如果…那么”,else相当于如果以上都不成立,那么就…一般用于将数据库内字段值转换为可以看懂的值(说明性质的),例如,数据库中存储的性别为1和2,1代表男,2代表女,如果我们直接返回1和2 的话客户端不一定清楚这个对应规则,这时我们就可以利用这个条件逻辑,把1和2 转换为客户端可以看懂的男和女。原创 2022-10-31 11:33:34 · 842 阅读 · 0 评论 -
SQL学习十七、事务处理
使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果为成功则提交事务,否则回滚事务。这 样,如果需要回退,可以回退到某个占位符。使用事务处理(transaction processing),通过确保成批的 SQL 操作要么 完全执行,要么完全不执行,来维护数据库的完整性。如果出现在2、3之间,就会有供应商没有供应商品(在某些业务中是合理的,某些业务中是不合理的)。原创 2022-10-31 11:32:51 · 1179 阅读 · 0 评论 -
SQL学习十六、使用存储过程
SQL学习十六、使用存储过程原创 2022-10-06 16:12:46 · 445 阅读 · 0 评论 -
SQL学习十五、视图
SQL学习十五、视图原创 2022-10-06 16:12:13 · 412 阅读 · 0 评论 -
SQL学习十四、创建和操纵表
多数 DBMS都具有交互式创建和管理数据库表的工具,表也可以直接用 SQL语句操纵。这里我主要结合移动端数据库SQLite 来讲解相关的表操作。SQLite 的操作方式可以看做是一种更简单的文件操作方式。原创 2022-10-06 16:11:08 · 892 阅读 · 0 评论 -
SQL学习十三、更新和删除数据
SQL学习十三、更新和删除数据原创 2022-10-06 16:10:17 · 815 阅读 · 0 评论 -
SQL学习十二、插入数据
SQL学习十二、插入数据原创 2022-10-06 16:09:52 · 13593 阅读 · 0 评论 -
SQL学习十一、组合查询
SQL学习十一、组合查询原创 2022-10-06 16:09:06 · 1374 阅读 · 0 评论 -
SQL学习九、子查询
SQL学习九、子查询原创 2022-10-06 16:08:21 · 900 阅读 · 0 评论 -
SQL学习八、分组数据
SQL学习八、分组数据原创 2022-10-06 16:07:22 · 769 阅读 · 0 评论 -
SQL学习七、聚合函数
SQL学习七、聚合函数原创 2022-10-06 16:04:08 · 3528 阅读 · 0 评论 -
SQLite学习八、TEXT类型读取超过2M的字符串
TEXT类型读取超过2M的字符串的时候报错Couldn't read row 0, col 0 from CursorWindow. Make sure the Cursor is initialized correctly before accessing data from it.关于SQLite 不同类型存储数据大小的限制1、CHAR。CHAR存储定长数据很方便,CHAR字段上...原创 2019-07-23 14:53:30 · 8206 阅读 · 0 评论 -
SQLite学习七、更新DB数据库中BLOB字段值
在代码中直接用update 语句执行会报错,需要使用 ContentValues 传入参数,进行更新 private void saveFile2LocalDB(String url) { SQLiteDatabase wyhcjgDb = WyhcJgDBManager.getInstance().getDbHelper().getWritableDatabase(En...原创 2019-07-23 14:52:48 · 1929 阅读 · 0 评论 -
SQLite学习六、通过Replace实现插入替换
我们在插入数据的时候经常遇到这样的 情况,如果这条数据在数据库中有就更新、没有就插入。比如,我们现在有这样一张表(type_id 是唯一标识列):先插入一条重复插入时失败重复时替换的处理其中,type_id 是唯一标识列,当出现 type_id 重复的数据时,我们替换掉表中的数据,SQL 的写法:Replace into worktype(type_id ,type...原创 2019-01-03 17:20:09 · 1791 阅读 · 0 评论 -
SQL学习十五、视图
视图是虚拟的表。与包含数据的表不一样,视图只包含使用时动态检索 数据的查询。可以把视图看作一个已经写好的SQL,使用的时候直接调用对应的视图以获取对应的数据。备注:1、MySQL从版本 5起开始支持视图,因此,视图不能在较早版本的 MySQL中使用。2、SQLite仅支持只读视图,所以视图可以创建,可以读,但其内容不能更改。为什么使用视图1、重用 SQL语句,视图可以给多人使用,而不...原创 2018-10-25 08:51:29 · 331 阅读 · 0 评论 -
SQL学习十、联结表
SQL最强大的功能之一就是能在数据查询的执行中联结(join)表。相关概念1、关系表理解关系表,最好可以通过一个例子。比如我们有这样一张水果订单表oderlist,表中每一行是一个水果订单,里面包含(主键id、水果名、数量、单价、订单号、用户id、用户名称、订单时间、水果供应商、供应商地址、供应商电话、供应商邮箱、供应商联系人)。通过表中的数据我们可以看出同一个供应商供应了多个订单,这...原创 2018-10-25 08:51:45 · 460 阅读 · 0 评论 -
SQL学习六、函数的使用
文章最开始发布在简书,我自己又复制过来了,这篇文章简书的链接SQL支持使用函数,我们可以在SQL语句中使用函数来处理数据,方便数据的转换和处理。比如我们前面接触的去除空格的函数—TRIM()需要注意的是,每一个BDMS都有自己特定的函数,只有少数的函数会被主要的DBMS同时支持,即使是这样,他们的函数名称和使用的语法也可能不同比如,下面几个常用的函数在不同DBMS中的使用提取字符串的组成部分DBMS函数AccessMID()DB2、Oracle、Postgre.原创 2021-04-16 09:17:15 · 562 阅读 · 0 评论 -
SQL学习五、计算字段
文章最开始发布在简书,我自己又复制过来了,这篇文章简书的链接很多时候,我们需要的数据比如详细地址,订单的总价等在数据库中可能存储在不同字段或不同表中,也可能需要对多个字段的数值进行运算得出。这种时候我们需要直接从数据库中检索出转换、计算或格式化过的数据,而不是检索出数据,然后再在客户端应用程序中重新格式化。虽然在 SQL 语句内可完成的许多转换和格式化工作都可以直接在客户端应用程序内完成。但一般来说,在数据库服务器上完成这些操作比在客户端中完成要快得多。有很多新手程序员或者爱偷懒的程序员喜欢是把.原创 2021-04-16 09:15:06 · 4611 阅读 · 0 评论 -
SQL学习四、过滤、数据筛选
数据过滤,即按照条件筛选数据,找出符合条件的数据。这可以说是SQL学习和使用时最核心的地方了。1、使用简单WHERE 子句WHERE 子句在表名(FROM 子句)之后给出比如我们需要在 adjunctlist 中查询 flaw_id = 201902的数据的add_timeSELECT add_time FROM adjunctlist WHERE flaw_id = 201902注意:SQL 过滤与应用过滤我们应该在查询的时候就使用SQL对数据做好过滤,而不是交给应用去进行数据过滤,这样做原创 2021-04-16 09:08:55 · 17288 阅读 · 0 评论 -
SQL学习三、注释
SQL注释的作用对复杂SQL语句添加一些描述性的注释,便于后期维护在SQL文件开始的地方标注程序员的联系方式、和一些说明注释还可以暂时停止要执行的SQL语句,比如我们测试一个长SQL中的某一部分时行内注释注释使用–(两个连字符)嵌在行内,之后的文本就是注释SELECT * --这是一条注释FROM adjunctlist注意:另一种行内注释,在行开始的地方使用# 将一整行作为注释,但是这种形式很少支持,最好不要使用,但是看到了要知道。# 这也是一条注释SELECT *原创 2021-04-01 20:44:20 · 542 阅读 · 1 评论 -
SQL学习二、查询
1、简单 SELECT 语句使用 SELECT 检索表数据,必须至少给出两条信息——想选择什么, 以及从什么地方选择。需要注意的几点多条 SQL语句必须以分号(;)分隔SQL语句不区分大小写,但是列名和值的大小写需要根据实际情况而定许多 SQL开发人员喜欢对 SQL关键 字使用大写,而对列名和表名使用小写,这算是一个不成名的规范。在处理 SQL语句时,其中所有空格都被忽略。所以我们的SQL语句也可以写成这样,方便阅读。SQL语句一般返回原始的、无格式的数据。数据的格式化是表示问题,而不是检原创 2021-04-01 20:43:49 · 230 阅读 · 0 评论 -
SQL学习一、数据库
SQL注释的作用对复杂SQL语句添加一些描述性的注释,便于后期维护在SQL文件开始的地方标注程序员的联系方式、和一些说明注释还可以暂时停止要执行的SQL语句,比如我们测试一个长SQL中的某一部分时行内注释注释使用–(两个连字符)嵌在行内,之后的文本就是注释SELECT * --这是一条注释FROM adjunctlist注意:另一种行内注释,在行开始的地方使用# 将一整行作为注释,但是这种形式很少支持,最好不要使用,但是看到了要知道。# 这也是一条注释SELECT *原创 2021-04-01 20:43:06 · 211 阅读 · 0 评论 -
SQLite 数据库打开异常时删除DB文件
SQLite 在打开DB文件时,如果遇到打不开的情况,会删除DB 文件,有点凶残。我们来查看源码1、android.database.sqlite.SQLiteDatabaseprivate SQLiteDatabase(String path, int openFlags, CursorFactory cursorFactory, DatabaseErrorHandler erro...原创 2019-07-23 14:52:08 · 1504 阅读 · 1 评论 -
Sqlite 数据库损坏的恢复
SQlite database disk image is malformed数据表的损坏,一般原因:数据表在读写的时候,设备突然断电、关机、软件闪退等情况下会造成数据库或表的损坏。Sqlite3 导出损坏包中的数据客户的一张表中的数据丢失了,无法查看,一共35条附件数据1、安装 Sqlite3安装步骤,菜鸟教程安装成功2、使用Sqlite 命令导出数据为sql文件...原创 2019-04-21 11:15:34 · 6051 阅读 · 2 评论 -
Room框架学习、使用
Room Persistence Library(官方介绍)官方ORM(Object Relational Mapping)框架专题Google官方推出的Android架构组件系列文章(六)Room持久化库Room 的官方API 可以查看这里##介绍Room是谷歌官方的数据库ORM(对象关系映射)框架,使用起来非常方便。Room提供了一个SQLite之上的抽象层,使得在充分利用SQ...原创 2018-10-25 10:37:04 · 5169 阅读 · 3 评论