mysql视图 事物_MySQL视图、事务

view(视图):

虚拟表

主要用来看(查)数据

基表的数据变化会在视图中体现出来

权限控制

将多表查询的结果整合在视图中方便用户查看

create view v1 as select ...查询语句

WITH CHECK OPTION 选项-- 插入后的数据,通过视图能够查询出来就符合WITH CHECK OPTION 否则就不符合

DROP VIEW IF EXISTS t_student;

CREATE VIEW t_student AS

SELECT * FROM student

WITH CHECK OPTION;

该视图是查询student表中的所有记录,进行更新的语句如下。

1 INSERT INTO `t_student` VALUES ('10004', '赵六', 22, 'wang123'); -- 插入时如果其他未设置的字段有默认值,可以插入,如果没有就报错

2 UPDATE t_student SET name='赵六2' where id='10004'; -- 更新可以

3 DELETE FROM t_student WHERE id = '10004'; -- 删除也可以

统计信息、函数的结果均可做成视图

show tables; 查看有哪些视图

show create view v1\G

drop view if exists v1;

==========================================

事务

begin 开始一个事务

rollback 事务回滚

commit 事务确认

MySQL提供了多用户并发访问数据的能力, 对数据的一致性、完整性形成了巨大的挑战.

不同的数据库管理系统均提供了并发控制功能.

不同的开发工具往往也提供了实现数据库并发控制的命令.

begin

savepoint test; 保存某个点

rollback to savepoint test;

transaction(事务):

事务是并发控制的基本单位

只有innodb/BDB存储引擎支持事务show engines\G

注意建表时用innodb存储引擎

事务的4个特性:

原子性(Atomicity): 原子意为最小的粒子, 或者说不能再分的事物,组成事务的所有语句必须要么全部执行, 要么全部取消

隔离性(Isolation): 某个事务的操作对其他事务不可见

持久性(Durability): 当事务完成后, 其影响应该保留下来, 不能撤消

一致性(Consistency): 指数据的规则, 在事务前/后应保持一致

s1读数据, s2也访问同一数据, 修改了它, s1再读, 得到的数据不一样了, 违反了一致性

set autocommit=0 禁止自动提交

set autocommit=1 开启自动提交

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值