当前位置: 首页 > news >正文

02SQLite

文章目录

  • 索引
    • 创建索引
    • 删除索引
    • 索引优点及缺点?
    • 避免使用索引
  • 视图
    • 创建视图
    • 删除视图
  • 事务
    • 事务控制命令
      • 通过事务方式对数据库进行访问优势:

索引

创建索引

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

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

单列索引(基于表的一个列上创建索引)。
唯一索引(唯一索引不允许任何重复的值插入到数据表当中:createunique index)。
组合索引(基于表的两个或多个列上创建索引)。
隐式索引(在创建数据表的时候,由数据库服务器自动创建索引)。

删除索引

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

索引优点及缺点?

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

避免使用索引

 数据表比较小不要使用索引;
 索引不应该出现在频繁操作的列当中;
 索引应该使用在有大量的 NULL 值列上;
 有频繁大批数据实现修改、增加、删除操作的。


-- 查询数据表: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 语句:安全原因、可以使复杂的查询易于理解和使用。可以在视图上创建一个触发器。

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

CREATE VIEW view_name AS
SELECT column1, column2..... FROM table_name
WHERE [condition];

删除视图

DROP VIEW 视图名称

事务

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

事务控制命令

begin transaction:事务处理
commit:提交事务
rollback:回滚事务

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

能够保证数据的读一致性;
在数据永久改变前,可以预览数据变化;
把逻辑相关的操作分成一个组。

SELECT * FROM "staff"-- 事务处理
BEGIN;
DELETE FROM staff WHERE SID=15;-- 事务提交
COMMIT;-- 事务回滚
ROLLBACK;
http://www.lryc.cn/news/453654.html

相关文章:

  • 学籍管理平台|在线学籍管理平台系统|基于Springboot+VUE的在线学籍管理平台系统设计与实现(源码+数据库+文档)
  • JDBC编程
  • Python : 类变量、静态方法、类方法
  • 大厂笔试现已经禁用本地IDE怎么看
  • 【PostgreSQL】入门篇——如何创建、删除和管理数据库及其用户,包括权限设置和角色管理
  • 网络安全:保护数字时代的堡垒
  • 【rCore OS 开源操作系统】Rust 字符串(可变字符串String与字符串切片str)
  • 远程过程调用RPC知识科普
  • Java - LeetCode面试经典150题 - 区间 (三)
  • NVIDIA网卡系列之ConnectX-6 DX规格信息(200G-PCIe 4.0x16-8PF1000VF-2019年发布)
  • 【案例】平面云
  • 测试用例的进阶二
  • zotero WebDAV同步忘记密码
  • 如何在 SQL 中创建一个新的数据库?
  • 《Linux从小白到高手》理论篇:Linux的进程管理详解
  • 【Qt】控件概述(3)—— 显示类控件
  • 数据库管理-第247期 23ai:全球分布式数据库-Schema对象(20241004)
  • Docker搭建一款开源的文档管理系统
  • 软件验证与确认实验一:静态分析
  • 基于SpringBoot+Vue的高校运动会管理系统
  • 什么东西可以当做GC Root,跨代引用如何处理?
  • Python深度学习:从神经网络到循环神经网络
  • C++输⼊输出
  • 卡码网KamaCoder 117. 软件构建
  • Acwing 线性DP
  • Docker面试-24年
  • ubuntu 安装k8s
  • No.4 笔记 | 探索网络安全:揭开Web世界的隐秘防线
  • spring揭秘24-springmvc02-5个重要组件
  • 关键字:register