此语句用于用修改的版本替换视图定义。如果使用了 SET HIDDEN 或 RECOMPILE,将不指定视图定义。
ALTER VIEW
[ owner.]view-name [ ( column-name, ... ) ] AS select-statement
[ WITH CHECK OPTION ]
ALTER VIEW
[ owner.]view-name { SET HIDDEN | RECOMPILE }
语法 1 除第一个单词外,ALTER VIEW 语句的语法与 CREATE VIEW 语句的语法相同。ALTER VIEW 语句用它的内容替换 CREATE VIEW 语句的整个内容。维护视图的现有权限,不必重新分配。如果使用 DROP VIEW 后再执行 CREATE VIEW,而不是 ALTER VIEW,则视图的权限必须重新分配。
语法 2 可以使用 SET HIDDEN 使关联的视图的语法变成乱码,使之不可读。可以卸载该视图,然后将其重装到其它数据库中。
此设置是不可逆的。如果您还将再次需要起始源,则必须将它保存在数据库外。 |
如果使用 SET HIDDEN,则使用存储过程调试程序进行调试将不会显示视图定义,也无法通过过程分析获得视图定义。
RECOMPILE 子句用于为现有视图重新创建列的定义。如果视图所基于的表被更新,可以使用 RECOMPILE 更新视图定义。RECOMPILE 也被 sa_recompile_views 系统过程用来在重建数据库时更新视图定义。
有关详细信息,请参见 sa_recompile_views 系统过程。
| 注意 如果定义视图的 SELECT 语句包含一个星号 (*),视图中的列数会在基表中发生列增减时随之变化。视图中列的名称和数据类型也会发生更改。 |
有关关键字和选项的信息,请参见 CREATE VIEW 语句。
必须是视图的所有者或者有 DBA 权限。
自动提交。
从内存中卸载所有的过程和触发器,使引用视图的任何过程或触发器都反映新的视图定义。如果定期变更视图,则过程和触发器的卸载和装载将影响性能。
SQL/92 供应商扩展。
SQL/99 供应商扩展。
Sybase 不受 Adaptive Server Enterprise 支持。
SQL Anywhere Studio 9.0.2
版权所有 © 1989–2005 Sybase, Inc. 部分版权所有 © 2001–2005 iAnywhere Solutions, Inc. 保留所有权利。