02SQLite

文章目录

索引

创建索引

索引(Index)是一种特殊查找表,数据库搜索引擎用来加速数据检索功能。

CREATE INDEX 索引名称 ON 数据表名称;

单列索引(基于表的一个列上创建索引)。

唯一索引(唯一索引不允许任何重复的值插入到数据表当中:createunique index)。

组合索引(基于表的两个或多个列上创建索引)。

隐式索引(在创建数据表的时候,由数据库服务器自动创建索引)。

删除索引

直接使用 DROP INDEX 命令即可,删除索引

索引优点及缺点?

通过建立索引可以极大地提高在数据库中获取所需数据信息的速度,同时还能够提高服务器处理相关搜索请求的效率。

避免使用索引

 数据表比较小不要使用索引;

 索引不应该出现在频繁操作的列当中;

 索引应该使用在有大量的 NULL 值列上;

 有频繁大批数据实现修改、增加、删除操作的。

sql 复制代码
-- 查询数据表:staff
select *from staff;

-- 创建索引 
CREATE INDEX staff_ssalary_index on staff(SSAlary);

-- 查询索引
SELECT *FROM sqlite_master WHERE type='index';

-- 通过索引查询数据
SELECT *FROM staff INDEXED BY staff_ssalary_index WHERE SSAlary >=50000;

-- 删除索引
DROP INDEX staff_ssalary_index;

视图

创建视图

视图则为一张虚拟表,它内容数据由查询决定。视图并不在数据库中存储的数据值形式存储,记录和字段由自由视图的查询所引用的表,并且在引用视图时动态生成。

视图是存储在数据库中查询 SQL 语句:安全原因、可以使复杂的查询易于理解和使用。可以在视图上创建一个触发器。

优势:视点集中简化操作定制数据安全性问题。

sql 复制代码
CREATE VIEW view_name AS
SELECT column1, column2..... FROM table_name
WHERE [condition];

删除视图

sql 复制代码
DROP VIEW 视图名称

事务

数据库事务( transaction)是访问并可能操作各种数据项的一个数据库操作序列,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。事务由事务开始与事务结束之间执行的全部数据库操作组成。

事务控制命令

begin transaction:事务处理

commit:提交事务

rollback:回滚事务

通过事务方式对数据库进行访问优势:

能够保证数据的读一致性;

在数据永久改变前,可以预览数据变化;

把逻辑相关的操作分成一个组。

sql 复制代码
SELECT * FROM "staff"

-- 事务处理
BEGIN;
DELETE FROM staff WHERE SID=15;

-- 事务提交
COMMIT;

-- 事务回滚
ROLLBACK;
相关推荐
这个DBA有点耶5 天前
MVCC深入:Read View、版本链与快照读——InnoDB并发控制的内核
数据库·mysql·架构
DBA_G5 天前
从地面到云霄:GBase数据库在民航三大场景的落地实践
数据库
自由能燃气设备5 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远5 天前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
2601_962218615 天前
万象生鲜系统称重自动多退少补算法解决生鲜非标品痛点
大数据·数据库·人工智能·python·算法
张洛闻Eren6 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
于平安6 天前
MySQL-触发器
数据库·mysql
白远山6 天前
上海24小时自助健身房解决方案实战指南与经验分享
java·数据库·架构·需求分析
Omics Pro6 天前
斯坦福Nature+Science|广义虚拟细胞基础大模型
数据库·人工智能·算法·机器学习·自然语言处理
2603_965148116 天前
AI+API选品:下一代智能商务助手雏形已现
java·大数据·数据库·人工智能·数据挖掘