• sql事务、视图和索引


    一、事务:
    1.概念:是单个逻辑单元执行的一系列操作(一个事务中有多个sql语句),这个操作作为一个整体一起提交,要么执行,要么都不执行,多个事务操作是一个不可分割的逻辑单元。
    2.事务的特性:
    (1)原子性(A):一个事务中的所有的操作不可再分割,保持原子性,他们要么都执行,要么都不执行。
    (2)一致性(C):数据保持一致
    (3)隔离性(I):并发事务(多个事务)之间相互独立、隔离
    (4)永久性(D):事务完成之后,数据永久有效
    3.事务的使用:
    (1)开始事务 begin transaction(将一个业务的操作包含在开始事务中)
    (2)提交事务 commit transaction(如果所有的事务都没有错误,提交事务)
    (3)回滚事务 rollback transaction(如果有一个错误的话,回滚事务)
    4.事务分类:
    (1)显示事务:用begin transaction 开始的事务,最常用的
    (2)隐士事务:打开隐士事务之后,系统自动控制事务
    (3)自动提交事务,用于单条sql语句中
    二、视图
    1.概念:是一个虚拟表,包含单个表的部分数据或多个表的总和数据组成的虚表,他的结构和数据是基于对数据表的查询基础上。
    注:(1)视图不存储数据,实际数据存储在数据表中
    (2)一个数据库表可以创建多个视图
    2.视图的作用:
    (1)筛选数据行
    (2)保护敏感数据
    (3)降低数据库的复杂度
    (4)将多个物理数据库抽象为一个逻辑数据库
    3.创建视图的注意事项:
    (1)select 语句不能包含order by
    (2)不能有into
    (3)不引用临时表或表变量
    4.创建视图:
    create view 视图名 as select 语句
    5.删除视图: drop view 视图名
    三、索引
    1.索引的概念:数据库中编排数据的内部方法
    2.索引页的概念:数据库存放索引数据的一种方式
    3.作用:提高数据库的检索速度,改善数据的性能
    4.分类:
    (1)唯一索引:不允许有重复的行数据,不允许为null
    (2)主键索引:特殊的唯一索引,不允许有null
    (3)聚集索引:索引顺序和数据物理存放顺序一致
    (4)非聚集索引:索引顺序和物理存放顺序不一致
    5.创建索引的原则:
    (1)在频繁搜索的列上
    (2)经常查询的列
    (3)经常排序和分组的列
    (4)进行连接的列(主键和外键)
    (5)在小字节的列上
    6.不推荐创建索引:
    (1)只有少量几个值得列上
    (2)只有几行数据的表上
    (3)在大字段上
    7.使用索引的注意事项:
    (1)查询中尽量不要用*
    (2)where后有多个条件的时候,有索引的放在前面
    (3)order by后尽量不要用表达式
    (4)定期的对索引页进行碎片整理
    8.创建和删除索引
    create index 索引名 on 表名(列名)
    drop index 表名.索引名
  • 相关阅读:
    [Git & GitHub] 利用Git Bash进行第一次提交文件
    Linux下 Unison 实现文件双向同步
    Linux SSH使用公钥私钥实现免登陆
    SSH自动断开连接的原因
    hosts.deny 和hosts.allow 配置不生效
    bind启动时提示953端口被使用
    Linux查询系统配置常用命令
    Linux 查硬件配置
    BIND rndc—使用说明
    rndc 错误解决 和 远程配置
  • 原文地址:https://www.cnblogs.com/a1111/p/12816643.html
Copyright © 2020-2023  润新知