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

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 的用法 » 创建数据库 » 使用数据库对象 » 使用实例化视图

 

创建实例化视图

创建实例化视图时,其定义存储在数据库中。数据库服务器会验证其定义,以确保编译正确。数据库服务器会对所有列和表引用进行完全限定,以确保对视图具有访问权的所有用户看到相同的定义。成功创建实例化视图后,使用 REFRESH MATERIALIZED VIEW 语句在视图中填入数据,也称为初始化视图。请参见REFRESH MATERIALIZED VIEW 语句

创建、初始化或刷新实例化视图前,应确保所有实例化视图的限制均已得到满足。请参见实例化视图的限制

要获得数据库中所有实例化视图的列表(包括各视图状态),请使用 sa_materialized_view_info 系统过程。请参见sa_materialized_view_info 系统过程

创建完实例化视图的定义后,它会出现在 Sybase Central 的 [视图] 文件夹中。

另请参见
♦  创建实例化视图 (Sybase Central)
  1. 以具有 DBA 或 RESOURCE 权限的用户身份连接到数据库。

  2. 在左窗格中,右击 [视图] 并选择 [新建] » [实例化视图]。

  3. 按照 [创建实例化视图向导] 中的说明操作。

  4. 初始化实例化视图,以使它包含数据。请参见初始化实例化视图

小心

处理该示例时,应删除所创建的实例化视图。否则,在试验其它示例时,将无法对其基础表 Employees 和 Departments 执行模式更改。无法变更具有已启用相关实例化视图的表的模式。请参见删除实例化视图

♦  创建实例化视图 (SQL)
  1. 以具有 DBA 或 RESOURCE 权限的用户身份连接到数据库。

  2. 执行 CREATE MATERIALIZED VIEW 语句。数据库服务器即创建视图定义并将其存储在数据库中,并且将视图的状态设置为 [已启用]。请参见CREATE MATERIALIZED VIEW 语句

  3. 必须初始化实例化视图,以使其包含数据。请参见初始化实例化视图

示例

以下语句创建一个包含雇员相关信息的实例化视图 EmployeeConfid16,然后对其初始化以在其中填充数据。

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

使用完该示例后,应删除所创建的实例化视图。否则,在试验其它示例时,将无法对其基础表 Employees 和 Departments 执行模式更改。无法变更具有已启用相关实例化视图的表的模式。请参见删除实例化视图