MySQL数据库原理学习(二十四)
2023-06-13 09:16:31 时间
4.1.3 检查选项
当使用WITH CHECK OPTION子句创建视图时,MySQL会通过视图检查正在更改的每个行,例如 插入,更新,删除,以使其符合视图的定义。MySQL允许基于另一个视图创建视图,它还会检查依赖视图中的规则以保持一致性。为了确定检查的范围,mysql提供了两个选项:CASCADED 和 LOCAL
,默认值为 CASCADED 。
1). CASCADED
级联。
比如,v2视图是基于v1视图的,如果在v2视图创建的时候指定了检查选项为 cascaded,但是v1视图创建时未指定检查选项。则在执行检查时,不仅会检查v2,还会级联检查v2的关联视图v1。
2). LOCAL
本地。
比如,v2视图是基于v1视图的,如果在v2视图创建的时候指定了检查选项为 local ,但是v1视图创建时未指定检查选项。则在执行检查时,知会检查v2,不会检查v2的关联视图v1。
4.1.4 视图的更新
要使视图可更新,视图中的行与基础表中的行之间必须存在一对一的关系。如果视图包含以下任何一
项,则该视图不可更新:
A. 聚合函数或窗口函数(SUM()、 MIN()、 MAX()、 COUNT()等)
B. DISTINCT
C. GROUP BY
D. HAVING
E. UNION 或者 UNION ALL
示例演示:
create view stu_v_count as select count(*) from student;
上述的视图中,就只有一个单行单列的数据,如果我们对这个视图进行更新或插入的,将会报错。
insert into stu_v_count values(10);
相关文章
- 实例与数据库的区别_mysql数据库实例是什么
- MySQL中快速创建数据库表的技巧(mysql创建数据库表)
- MySQL日常维护与管理实践(mysql日常管理)
- 解决MySQL本地无法连接的问题(mysql本地无法连接)
- MySQL数据库连接性能优化(mysql数据库连接时间)
- MySQL中的内置函数使用技巧(mysql内置函数)
- MySQL教案:学习实现数据库自动化管理(mysql教案)
- 如何在 Ubuntu 上安装 MySQL 数据库?(ubuntu安装mysql)
- 「MySQL 教程」学习如何拼接 SQL 语句,让你的操作更灵活高效(mysql拼接sql语句)
- MySQL 经典案例——构建成功的数据库(mysql经典案例)
- MySQL结构修复:重建你的数据库(mysql结构修复)
- MySQL行合并:提升数据库查询效率(mysql行合并)
- 如何在 MySQL 中设置唯一约束(mysql设置唯一约束)
- 探讨数据库技术:MySQL专家吴炳锡的经验分享(mysql吴炳锡)
- 导入MySQL存储过程: 优化数据库操作的新方法(mysql存储过程导入)
- 优化数据库性能,迈向高效:Mysql配置指南(mysql配置)
- MySQL中的IN命令:有效管理你的数据库(mysql in 命令)
- 比较MySQL两张表的差异(mysql两表对比)
- MySQL:使用离线数据库的有效方法(mysql离线数据库)
- MySQL主从复制,实现数据库高可用性(mysql中主从配置)
- C语言连接MySQL轻松实现数据库交互(c sql连接mysql)
- MySQL数据库高效写入实现省时省力(c mysql数据写入)
- 用CMD快速启动MySQL服务(cmd启动mysql服务)
- 为保障数据安全,使用MySQL必须设置密码(mysql一定要设密码)
- MySQL数据库不存在db文件的解决方法(mysql下没有.db)
- MySQL教程学习如何在MySQL下通过创建表语句建立新数据表(mysql下创建表语句)
- MySQL出现故障如何解决不能使用的问题(mysql不能用了么)