MySQL数据库(11)
来源:互联网 发布:大数据营销案例沃尔玛 编辑:程序博客网 时间:2024/05/21 22:30
使用事务保证数据完整性
1.MySQL的事务处理:
事务就是将一组SQL语句放在同一批次内执行
如果一个SQL语句出错,则该批次内的所有SQL都将被取消执行
注:MySQL事务处理只支持InnoDB和BDB数据表类型
2.事务的ACID原则
原子性、一致性、隔离性、持久性
3.MySQL的事务实现方法:
set autocommit
eg:set autocommit=0; #关闭自动提交模式
set autocommit=1; #开启自动提交模式
注意:MySQL中默认是自动提交
使用事务时应先关闭自动提交
i.start transaction :开始一个事务,标记事务的起始点
ii.commit :提交一个事务给数据库
iii.rollback :将事务滚回,数据回到本次事务的初始状态
iv.set autocommit :还原MySQL数据库的自动提交
创建和使用索引
1.数据库索引
作用:提高查询速度
确保数据的唯一性
可以加速表和表之间的连接,实现表与表之间的参照完整性
使用分组和排序子句进行数据检索时,可以显著减少分组和排序的时间
全文检索字段进行搜索优化
分类:主键索引(primary key)
唯一索引(unique)
常规索引(index)
全文索引(fulltext)
2.主键索引
主键:某一个属性组能唯一标识一条记录
特点:最常见的索引类型
确保数据记录的唯一性
3.唯一索引
作用:避免同一个表中某数据列中的值重复
与主键索引的区别:主键索引只能有一个
唯一索引可有多个
4.常规索引
作用:快速定位特定数据
注意:index和key关键字都可设置常规索引
应加在查找条件的字段
不宜添加太多常规索引,影响数据的插入、删除和修改操作
5.全文索引
作用:快速定位特定数据
注意:只能用于MyISAM类型的数据表
只能用于char、varchar、text数据列类型
适合大型数据集
6.管理索引
创建索引:创建表时添加
建表后追加:alter table 表名 add 索引类型(数据列名)
删除索引:drop index 索引名 on 表名
alter table 表名 drop index 索引名
alter table 表名 drop primary key
查看索引:show index(或keys)from 表名
7.索引准则
索引不是越多越好
不要对经常变动的数据加索引
小数据量的表建议不要加索引
索引一般加在查找条件的字段
- MySQL数据库(11)
- MySQL数据库总结(11)索引
- MySql数据库-11视图
- 数据库(mysql)简介
- mysql数据库(一)
- MySQL数据库(一)
- MySQL数据库(二)
- MySQL数据库(三)
- Mysql数据库(1)
- Mysql数据库(2)
- Mysql数据库(3)
- mysql数据库(1)
- MySQL数据库(2)
- MySQL数据库(3)
- MySQL数据库(4)
- MySQL数据库(5)
- MySQL数据库(6)
- MySQL数据库(7)
- HAUTOJ 1266 最大子段和(dp)
- Easy 21 Symmetric Tree(101)
- Qt QString的arg()方法的使用(一)
- Dynamics 365 SiteMap Designer
- 高德地图java.lang.UnsatisfiedLinkError: dlopen failed:has text relocations
- MySQL数据库(11)
- Laravel 请求
- 实验五项目三
- Python中闭包的理解
- qmp简介 QEMU Machine Protocol
- 台湾李宏毅教授深度学习
- linux c 命令行解析
- Android开发经验(不积跬步无以至千里)
- The specified child already has a parent. You must call removeView() on the child's parent first.错误