1,如何添加数据完整性
在创建表的时候给表添加约束
2.完整性分类
实体完整性
域完整性
引用完整性
使用99连接法
SELECT st.name,sc.score,co.name
FROM students st,score sc,course co
WHERE st.id = sc.sid AND sc.cid = co.id
image.png使用内联查询
SELECT *
FROM students st
JOIN score sc
ON st.id = sc.sid
JOIN course co
ON sc.cid = co.id;
image.png
自然连接
连接查询会产生无用笛卡尔集,我们通常使用主外键关系等式来去除它.
而自然连接无需你去给出主外键等式,它会自动找到这一等式
也就是说不用去写条件
子查询1. 什么是子查询
1. 一个select语句中包含另外一个完整的select语句
2. 或者说两个以上select,那么就是子查询语句了
-
子查询出现的位置
-
where后,把select查询出的结果当做另外一个select的条件值
-
from后,把查询出的结果当作一个新表
一、什么是事务
- 不可分割的操作,假设有ABCD四个步骤组成
- 若ABCD四个步骤都成功完成,则认为事务成功
- 若ABCD任意一个步骤操作失败,则认为失败
原子性(Atomicity) - 原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚
- 一致性(Consistency)
- 一致性是指事务必须使数据库从一个一致性状态变换到另外一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态
- 让数据保持一定上的合理性
- 一个商品出库时,仓库商品数量-1,对应用户的购物车中商品+1
- 隔离性(Isolation)
- 事务的隔离性是指并发的事务相互隔离,不能相互干扰
- 持久性(Durability)
- 事务的持久性是指事务一旦提交,对数据的状态变更应该被永久保存
提交事务
- 提交事务: commit (所有语句全部执行完毕,还没有发生异常,提交事务,更新到数据库当中)
commit
事务的执行流程:
image.png
网友评论