数据库4
23.视图视图view是基于一个查询的结果 而产生的表,可以算作是表查询的“影子”。表改变了,视图里的数据也会跟着改变。一般不允许在
23.视图
视图view是基于一个查询的结果 而产生的表,可以算作是表查询的“影子”。
表改变了,视图里的数据也会跟着改变。一般不允许在视图上做修改
视图:作用 简化以后的查询,尤其是一个多表查询。
视图跟表的用法一样。视图本质就是一个表(某查询的)
表主体数据表示改变,视图跟着改的。
视图如果是多表查询的结果 那么不可以修改。视图如果是单表的结果,那么是可以修改的额,但是强烈不建议修改。为了防止视图修改,创建视图时,添加with check option
24.数据库函数
25.事务
在Java里面来临控制事务,到框架里有对应的工具方便操作
是一个复杂的业务逻辑里,需要多个sql操作,这多个sql操作,必须一起成功,否则一起失败。
(分布式数据:数据库多个地方的多个库,分布在不同项目中)
事务:一个或多个数据库操作,组成的最小逻辑单元,一起成功或一起失败。
特性:ACID
A:原子性 Atomicit 原子操作不可再分,一起成功一起失败
B:一致性Consistency (1)数据总和不变(2)约束性必须还要遵循
C:隔离性Isolation 事务与事务之间不应该相互影响,执行时保持隔离的状态。(对共同的数据)(有点像多线程之间的共同数据问题:同步)
D:持久性Durability 一次事务一旦提交,将会持久化到文件,无法进行回滚。
提交:把事务里的修改等操作写入到数据库文件。
回滚:把事务里的修改等操作“撤销”“放弃”。
如何做到提交或回滚:事务里在提交和回滚确定之前,所有的修改操作是暂存入“日志区”。