如果基表发生变化,手动视图即会失效。刷新手动视图是指数据库服务器重新执行视图的查询定义,并用查询的新结果集替换视图数据。刷新可使视图数据与基础数据保持一致。应考虑手动视图数据失效的可接受程度,并制订刷新策略。您的策略应考虑完成刷新所花费的时间,因为在刷新操作期间视图不能用于查询。
还可以设置策略,在该策略中使用事件刷新视图。例如,可以创建事件,以定期刷新。
除了未初始化(不包含数据)之外,快速视图不需要刷新,例如截断之后。
您也可以使用 sa_refresh_materialized_views 系统过程刷新视图。请参见sa_refresh_materialized_views 系统过程。
可以使用 materialized_view_optimization 数据库选项来配置一个失效程度阈值,如果超过该阈值,优化程序在处理查询时就不会使用该实例化视图。请参见设置优化程序的实例化视图失效程度阈值。
使用 REFRESH MATERIALIZED VIEW 语句时,可以使用 WITH ISOLATION LEVEL 子句覆盖连接隔离级别。有关刷新实例化视图时如何控制并发性的详细信息,请参见REFRESH MATERIALIZED VIEW 语句的 WITH 子句。
建议您在升级数据库服务器后,或重建或升级数据库(以与升级的数据库服务器一起工作)后,刷新实例化视图。
以具有 DBA 权限的用户身份或实例化视图的 INSERT 权限的用户身份使用 SQL Anywhere 12 插件连接到数据库。您还必须拥有基础表的 SELECT 权限。
在左窗格中,双击 [视图]。
右击实例化视图,然后选择 [刷新数据]。
选择隔离级别并单击 [确定]。
以具有 DBA 权限的用户身份或以具有实例化视图的 INSERT 权限的用户身份连接到数据库。您还必须拥有基础表的 SELECT 权限。
执行 REFRESH MATERIALIZED VIEW 语句。
![]() |
使用DocCommentXchange 讨论此页。
|
版权 © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |