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;
相关推荐
.Eyes1 小时前
OceanBase 分区裁剪(Partition Pruning)原理解读
数据库·oceanbase
MrZhangBaby2 小时前
SQL-leetcode— 2356. 每位教师所教授的科目种类的数量
数据库
一水鉴天2 小时前
整体设计 之定稿 “凝聚式中心点”原型 --整除:智能合约和DBMS的在表层挂接 能/所 依据的深层套接 之2
数据库·人工智能·智能合约
翔云1234563 小时前
Python 中 SQLAlchemy 和 MySQLdb 的关系
数据库·python·mysql
孙霸天3 小时前
Ubuntu20系统上离线安装MongoDB
数据库·mongodb·ubuntu·备份还原
Java 码农3 小时前
nodejs mongodb基础
数据库·mongodb·node.js
TDengine (老段)3 小时前
TDengine IDMP 运维指南(4. 使用 Docker 部署)
运维·数据库·物联网·docker·时序数据库·tdengine·涛思数据
TDengine (老段)3 小时前
TDengine IDMP 最佳实践
大数据·数据库·物联网·ai·时序数据库·tdengine·涛思数据
彬彬醤4 小时前
Mac怎么连接VPS?可以参考这几种方法
大数据·运维·服务器·数据库·线性代数·macos·矩阵
废喵喵呜4 小时前
达梦数据库-实时主备集群部署详解(附图文)手工搭建一主一备数据守护集群DW
网络·数据库·tcp/ip