首批通过分布式安全可靠测评,为关键业务系统打造
REFRESH
更新时间:2026-07-15 15:16:39
REFRESHE 用于刷新指定的一个物化视图。
功能适用性
该内容仅适用于 OceanBase 数据库企业版。OceanBase 数据库社区版暂不支持。
语法
DBMS_MVIEW.REFRESH (
mv_name IN VARCHAR(65535)
[, method IN VARCHAR(65535) DEFAULT NULL]
[, refresh_parallel IN INT DEFAULT 0]
[, nested IN BOOLEAN DEFAULT FALSE]
[, nested_refresh_mode IN VARCHAR DEFAULT NULL]
);
参数解释
说明
非嵌套物化视图不存在级联刷新行为,指定 nested 和 nested_refresh_mode 参数无意义,默认独立刷新。
| 参数 | 说明 |
|---|---|
| mv_name | 需要刷新的物化视图名称。 |
| method | 定义了物化视图的刷新策略,可在创建物化视图时指定默认的策略。可选方法包括:
|
| refresh_parallel | 刷新操作的并发度,即同时执行刷新操作的线程数。 |
| nested | 指定嵌套物化视图的刷新模式。取值如下:
|
| nested_refresh_mode | 指定级联刷新嵌套物化视图是一致刷新行为还是非一致刷新行为。取值如下:
|
示例
独立刷新模式:
只指定参数
mv_name。obclient> CALL DBMS_MVIEW.REFRESH('mv1');指定参数
mv_name及参数nested值为false。obclient> CALL DBMS_MVIEW.REFRESH( 'mv1', nested=> false);
级联非一致刷新模式:
指定参数
mv_name,参数nested值为true,不指定参数nested_refresh_mode。obclient> CALL DBMS_MVIEW.REFRESH( 'mv1', nested=> true);指定参数
mv_name,参数nested值为true及参数nested_refresh_mode值为inconsistent。obclient> CALL DBMS_MVIEW.REFRESH( 'mv1', nested=> true, nested_refresh_mode => 'inconsistent');
级联一致刷新模式:
指定参数
mv_name,参数nested值为true及参数nested_refresh_mode值为consistent。obclient> CALL DBMS_MVIEW.REFRESH( 'mv1', nested=> true, nested_refresh_mode => 'consistent');以下为报错场景:
参数
nested值为false,又指定参数nested_refresh_mode值,报错。obclient> CALL DBMS_MVIEW.REFRESH( 'mv1', nested=> false, nested_refresh_mode => 'xxxx');没有指定参数
nested的值,只指定参数nested_refresh_mode的值,报错。obclient> CALL DBMS_MVIEW.REFRESH( 'mv1', nested_refresh_mode => 'xxxx');参数
nested值为true,参数nested_refresh_mode值为非法字符串,报错。obclient> CALL DBMS_MVIEW.REFRESH( 'mv1', nested=> true, nested_refresh_mode => '非法字符串');
相关文档
关于刷新物化视图的介绍信息,参见 刷新物化视图。