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 用法 » 表、视图和索引 » » 表变更

 

删除表

可使用 Sybase Central 将表从数据库中删除,比如,当您不再需要该表时。

前提条件

您必须是所有者,或者具有 DROP ANY TABLE 或 DROP ANY OBJECT 系统特权。

不能删除在发布中用作项目的表。如果在 Sybase Central 中试图执行此操作,则将出现错误。此外,如果要删除具有相关视图的表,则需要采用一些附加步骤。

如果存在任何相关的实例化视图,表的删除将会失败;您必须先禁用相关的实例化视图。使用 sa_dependent_views 系统过程来确定是否存在相关实例化视图。

 任务
  1. 在 Sybase Central 中,使用 SQL Anywhere 16 插件连接到数据库。

  2. 双击 []。

  3. 右击表,然后单击 [删除]。

  4. 单击 []。

结果

删除表时,表的定义会从数据库中删除。如果存在相关常规视图,数据库服务器会在执行表变更操作后尝试重新编译并重新启用这些视图。如果不能这样做,很可能是因为表删除操作使视图定义失效。在这种情况下,必须改正视图定义。

如果存在相关实例化视图,后续的刷新操作将会失败,因为视图的定义不再有效。在这种情况下,必须删除实例化视图,然后以有效的定义重新创建。

表上的所有索引会被删除。

删除表时会执行 COMMIT 语句。这会使上次执行 COMMIT 或 ROLLBACK 后对数据库的所有更改成为永久更改。

下一个

必须删除相关的常规视图或实例化视图,或者更改它们的定义,以删除对所删除表的引用。

 另请参见