视图
- 视图就是一个虚拟的表用来隔离数据库
- 创建视图
- 创建视图是不允许有相同的字段名的
- create view 视图名称 as select语句;
- 修改视图
- alter view 视图名称 as select语句;
- 删除视图
- drop view 视图名称
- 视图是方便查询的不可以修改
- 视图的作用
- 提高了重用性,就像一个函数
- 对数据库的重构,不影响数据的时使用
- 提高了安全,可以让不同的用户使用
- 让数据更加清晰
事务
-
什么是事务
- 它是一个操作序列,这些操作要么都执行完,要么都不执行,它是不可分割的工作单位
-
事务的四大特性(简称ACID)
- 原子性
- 一致性
- 要么都成功,要么都失败
- 隔离性
- 一个事务在提交前,其他事物不可以见,数据库使用了行级锁
- 持久性
-
开启事务 start transaction; 或者begin;
start transaction; -- sql语句,必须所有的语句都执行完毕,不然就会回滚数据 commit;
- mysql 客户端是默认开启事务,而且是默认提交事务
- Python中也是默认开启事务的,但是需要手动提交
- 数据提交之后是无法数据回滚的
索引
- 索引是一种特殊的文件(innodb数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针
- 一种特殊的数据结构
- 存储了数据库直接的引用(指针)
- 加快数据库查询的速度
- 开启运行时间检测
- set profiling=1;
- 查看时间
- show profiles;
- 创建索引
- create index 索引名 on 表名(字段名称(长度))
- 删除索引
- drop index 索引名 on 表名
- 建立太多的索引会影响更新和插入的速度
账户管理
- 需要使用mysql数据库
- 查看用户名账号密码
- select host, user, authentication_string from user;
- 创建账户并授权
- grant select on jing_dong.* to 'langwang'@'localhost' identified by '123456';