含义
事务 : 一条或多条sql执行一个执行单位,一组要么都执行,要么都不执行
特点(ACID)
A 原子性 一个事务是不可分割的整体,都执行,都不执行
C 一致性 一个事务可以使省局从一个一致状态切换到另一个一致状态
I 隔离性 一个事务不收其他事务的干扰,多个事务互相隔离
D 持久性 一个事务一旦被提交,则永久持续到本地
事务并发问题有哪些?
脏读 不可重复读 幻读
read uncommitted 读未提交 错 错 错
read committed 读提交 对 错 错
repeatable read 可重复读 对 对 错
seralizabke 串行化 对 对 对
视图简介
含义:
mysql 5.1版本新特性 ,本身是一个虚拟的表,他的数据来自于表,通过执行时动态生成。
好处:简化sql
提高了重用性
安全性
创建
create view 视图名 as 查询语句;
修改
方式一 :
create or replace 视图名 as 查询语句;
方式二 :
alter view 视图名 as 查询语句;
删除
drop view 视图名
查看
desc 视图名
show create view 视图名
试用
insert
update
delete
select
视 图和表的对比
关键字 是否占用物理空间 试用
视图 view 占用较小,只保留sql逻辑 一般用于查询
表 table 保存实际数据 增删更改查
常见约束
not null 非空 该字段的值必填
unique 唯一 该字段不可重复
default 默认 该字段不用手动插入默认值
check 检查 mysql 不支持
primary key 主键 不可重复,非空
foreign ;key 外检 ,该字段的值引用另外的表字段
主键和唯一的区别:
主键一个,唯一可以多个
主键不能为空,唯一可以
相同点
都具有唯一
支持组合键,但不支持
外检:
- 用于限制两者关系,从表字段值引用主表的应用
- 外键和主表 引用类型一致,意义一致,名称无所谓
- 主表的被引用要求是一个key (一般为主键)
- 插入数据,先插入主表,
- 删除数据,先删除从表