索引是对数据表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。索引有助于更快的获取信息。
索引的一个主要目的就是加快检索表中数据的方法,亦即能协助信息搜索者尽快的找到符合限制条件的记录ID的辅助数据结构。
数据库事务(Database Transaction),是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部操作成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、一致性、隔离性和持久性)属性。事务时数据库运行中的逻辑工作单位,由DBMS中的事务管理子系统负责事务的处理。
同一时间,只允许一个事务请求统一数据,不同的事务之间彼此没有任何干扰。比如A正在从一张银行卡中取钱,在A取钱的过程结束前,B不能向这张卡转钱。
inner join
和 left join
left join(左连接)返回包括左表中的所有记录和右边中联结字段相等的记录
right join(右连接)返回包含右表中所有记录和左表中联结字段相等的记录
inner join(等值连接)只返回两个表中联结字段相等的行
事务是由一系列对系统中数据进行访问与更新的操作所组成的一个程序执行逻辑单元。事务时DBMA中最基础的单位,事务不可分割。
事务具有四个特征:分别是原子性、一致性、隔离性、持续性。简称ACID。
索引
数据库索引是为了增加查询速度而对表字段附加的一种标识,是对数据库表中一列或多列的值进行排序的一种结构。
DB在执行一条sql语句的时候,默认的方式事根据搜索条件进行全表扫描,遇到匹配条件的就加入到搜索结果集合。如果我们对某一个字段增加索引,查询时就会先去索引列表中一次定位到特定值的行数,大大减少了遍历匹配的行数,所以能明显增加查询的速度。
优点:
缺点:
添加索引的原则