Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 (中文) » SQL Anywhere 服务器 - SQL 用法 » 表、视图和索引 » 实例化视图

 

隐藏实例化视图定义

可以对用户隐藏实例化视图定义,这将对数据库中存储的视图定义进行模糊处理。此设置是不可逆的。

前提条件

您必须是实例化视图的所有者,或者具有以下其中一种系统特权:

  • ALTER ANY MATERIALIZED VIEW
  • ALTER ANY OBJECT

上下文和注释

隐藏实例化视图后,使用调试程序进行调试将不会显示视图定义,也无法通过过程分析获得视图定义。仍可对该视图进行卸载,然后将其重装到其它数据库中。

实例化视图的隐藏操作是不可逆的,并且只能使用 SQL 语句执行。

 任务
  1. 连接到数据库。

  2. 执行 ALTER MATERIALIZED VIEW...SET HIDDEN 语句。

结果

执行自动提交。

当您浏览目录时,视图将不再可见。隐藏后的视图仍可直接引用,也仍可在查询处理中使用。

以下语句创建一个实例化视图 EmployeeConfid3,并对其刷新,然后对其视图定义进行模糊处理。

CREATE MATERIALIZED VIEW EmployeeConfid3 AS
   SELECT EmployeeID, Employees.DepartmentID, SocialSecurityNumber, Salary, ManagerID,
      Departments.DepartmentName, Departments.DepartmentHeadID
   FROM Employees, Departments
   WHERE Employees.DepartmentID=Departments.DepartmentID;
REFRESH MATERIALIZED VIEW EmployeeConfid3;
ALTER MATERIALIZED VIEW EmployeeConfid3 SET HIDDEN;
小心

运行完以下示例后,应删除所创建的实例化视图。否则,在试验其它示例时,将无法对其基础表 Employees 和 Departments 执行模式更改。


 另请参见