物化视图的创建和管理
1物化视图
视图 (VIEW) 可以看做是一种逻辑表,其数据来自于一张表或多张表,不占用物理存储空间。对视图的 DML 操作本质上是对其基表的操作。物化视图和普通视图一样,都是构建在一个查询语句之上的,只是物化视图会存储并刷新视图中的数据。
物化视图 (MATERIALIZED VIEW) 是目标表在特定时间点上的一个副本,占用存储空间,即将查询出来的数据存储在数据库中。当所依赖的一个或多个基表的数据发生更新,必须启用刷新机制才能保证数据是最新的。
物化视图可以用于数据复制(Data Replication),也可用于数据仓库缓存结果集以此来提升复杂查询的性能。
1.1物化视图的创建
1.1.1创建基于主键的物化视图
创建employee表插入数据
创建物化视图
默认的物化视图类型,通过主键来标示行的变化,表上必须有主键
查询物化视图及信息
物化视图也占一定的空间
1.1.2创建基于 rowid 的物化视图
创建city表插入数据
若表上无主键,可使用基于 rowid 的方式创建物化视图。示例语句如下:
通过系统表 user_mviews 查询物化视图信息
查询物化视图数据
1.2物化视图日志
当基表上有 DML 操作时,系统将变化记录在日志表里,然后使用这些日志刷新到物化视图,这种刷新方式为快速刷新。通过快速刷新避免了全量刷新,也降低了同步数据的开销。
1.2.1创建基于主键的物化视图日志
创建日志
一张表上只能创建一个物化视图日志。根据需求选择创建的类型,基于主键或者基于 ROWID。
1.2.2创建基于ROWID 的物化视图日志
创建日志
1.2.3查看物化视图日志
注意
物化视图日志创建成功后,会自动建立物化视图日志表并在表上建立一个触发器。
使用如下语法,将已创建的物化视图刷新方式由全量刷新改为快速刷新
更新基表 w_employee的一条数据,比如増删改,日志表中会记录
查看日志
同理,对另一张表插入数据
查看日志
1.2.4删除物化视图日志
删除物化视图日志
删除日志后已无法查询
社区地址:https://eco.dameng.com
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhghfkcb
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13