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;
相关推荐
W21552 分钟前
Liunx下MySQL:表的约束
数据库·mysql
黄名富7 分钟前
Redis 附加功能(二)— 自动过期、流水线与事务及Lua脚本
java·数据库·redis·lua
言、雲12 分钟前
从tryLock()源码来出发,解析Redisson的重试机制和看门狗机制
java·开发语言·数据库
一个程序员_zhangzhen1 小时前
sqlserver新建用户并分配对视图的只读权限
数据库·sqlserver
zfj3211 小时前
学技术学英文:代码中的锁:悲观锁和乐观锁
数据库·乐观锁··悲观锁·竞态条件
吴冰_hogan1 小时前
MySQL InnoDB 存储引擎 Redo Log(重做日志)详解
数据库·oracle
nbsaas-boot1 小时前
探索 JSON 数据在关系型数据库中的应用:MySQL 与 SQL Server 的对比
数据库·mysql·json
cmdch20171 小时前
Mybatis加密解密查询操作(sql前),where要传入加密后的字段时遇到的问题
数据库·sql·mybatis
程序员学习随笔1 小时前
PostgreSQL技术内幕21:SysLogger日志收集器的工作原理
数据库·postgresql
Sun_12_21 小时前
SQL注入(SQL lnjection Base)21
网络·数据库