使用事务保证数据完整性和创建和使用索引

一.使用事务保证数据完整性
(一)MySQL的事务处理
1.失误就是将一组SQL语句放在同一批次内执行
2.如果一个SQL语句出错,则该批次内的所有SQL都将被取消执行
注意:MySQL事务处理只支持InnoDB和BDB数据表类型
(二)事务的ACID原则
1.原子性(Atomic)
2.一致性(Consist)
3.隔离性(Isolated)
4.持久性(Durable)
(三)MySQL的事务实现方法
SET  AUTOCOMMIT
使用SET语句来改变自动提交模式
       SET  AUTOCOMMIT = 0;   #关闭自动提交模式
       SET  AUTOCOMMIT = 1;   #开启自动提交模式
                注意:MySQL中默认是自动提交
         使用事务时应关闭自动提交
(四)MySQL的事务实现方法
1.START TRANSACTION
   开始一个事务,标记事务的起始点
2.COMMIT
   提交一个事务给数据库
3.ROLLBACK
   将事务回滚,数据回到本次事务的初始状态
4. SET  AUTOCOMMIT = 1;
    还原MySQL数据库的自动提交


二.创建和使用索引
数据库索引
1.作用:
    提高查询速度
    确保数据的唯一性
    可以加速表和表之间的链接,实现表与表之间的参照完整性
    使用分组和排序子句进行数据检索时,可以显著减少分组和排序的时间
    全文检索字段进行搜索优化
2.分类:
   主键索引(PRIMARY KEY)
   唯一索引(UNIQUE)
   常规索引(INDEX)
   全文索引(FULLTEXT)
①主键索引
1.主键:
      作用:某一属性组能唯一标识一条记录
               如:学生表(学号,姓名,班级,性别等),学号是唯一标识的,可 作


为主键
2.特点:最常见的索引类型
              确保数据记录的唯一性
②唯一索引
1.作用:避免同一个表中某数据列中的值重复
2.与主键索引的区别:主键索引只能有一个
                                  唯一索引可有多个
③常规索引
1.作用:快速定位特定数据
2.注意:(1)index和key关键字都可以设置常规索引
             (2)应加在查找条件的字段
             (3)不宜添加太多常规索引,影响数据的差入、删除和修改操作
④全文索引
1.作用:快速定位特定数据
2.注意:只能用于MyISAM类型的数据表
             只能用于CHAR、VARCHAR、TEXT数据列表型
             适合大型数据集
管理索引
1.创建索引:
      创建表是添加
      建表后追加:语法:ALERT TABLE 表名 ADD索引类型(数据列名)
2.删除索引:
      DROP  INDEX  索引名  ON      表名
      ALTER  TABLE  表名  DROP  INDEX   索引名
      ALTER  TABLE  表名  DROP  PRIMARY KEY
3.查看索引:
      SHOW    INDEX(或KEYS)   FROM    表名
索引准则
1.索引不是越多越好
2.不要对经常变动的数据加索引
3.小数据量的表建议不要加索引
4.索引一般应加在查找条件的字段


2.注意:(1)index和key关键字都可以设置常规索引
             (2)应加在查找条件的字段
             (3)不宜添加太多常规索引,影响数据的差入、删除和修改操作
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值