文章目录
事务处理
事务
定义:将一组SQL语句放在同一批次内去执行
如果一个SQL语句出错了,则该批次内的所有SQL都将被取消执行
注意:mysql事务处理只支持InnoDB和BDB数据表类型
事务的ACID原则
1、原子性(Atomic):当成一个整体,不可分开执行
2、一致性(Consist):数据要么处于修改之前的状态,要么处于修改过后的状态,不同步的状态
3、隔离性(Isolated):事务与事务之间处理的时候互不影响
4、持久性(Durable) :事务提交过后,数据就会被永久的修改了
MySQL的事务实现方法
set autocommit----->自动提交模式
set autocommit = 0; #关闭自动提交模式
set autocommit = 1; #打开自动提交模式
注意:
1、mysql中默认是自动提交
2、使用事务时应先关闭自动提交
#开始一个事务,标记事务的起始点
start transaction
#提交一个事务给数据库
commit
#将事务回滚,数据回到本次事务的初始状态
rollback
#还原MySQL数据库的自动提交
set autocommit = 1;
#举例子
视图
实例:创建一个视图
create view 视图名
AS
select studentno as 学号,studentresult as 成绩
where subjectno = 1;
数据库索引
作用
1、提高查询速度
2、确保数据的唯一性
3、可以加速表和表之间的连接,实现标语表之间的参照完整性
4、使用分组和排序自居进行数据检索时,可以显著减少分组和排序的时间
5、全文检索字段进行搜索优化
分类
1、主键索引(primary key)
2、唯一索引(unique)
3、常规索引(index)
4、全文索引(fulltext)
主键索引
某一个属性能唯一表示一条记录
特点:
1、最常见的索引类型
2、确保数据记录的唯一性
3、确定特定数据记录在数据库中的位置
create table `表名`(
gradeID int(11) auto_increment