Transact-SQL 参考

DROP VIEW

从当前数据库中删除一个或多个视图。可对索引视图执行 DROP VIEW。

语法

DROP VIEW { view } [ ,...n ]

参数

view

是要删除的视图名称。视图名称必须符合标识符规则。有关更多信息,请参见使用标识符。可以选择是否指定视图所有者名称。若要查看当前创建的视图列表,请使用 sp_help

n

是表示可以指定多个视图的占位符。

注释

除去视图时,将从 sysobjectssyscolumnssyscommentssysdependssysprotects 系统表中删除视图的定义及其它有关视图的信息。还将删除视图的所有权限。

已除去的表(使用 DROP TABLE 语句除去)上的任何视图必须通过使用 DROP VIEW 显式除去。

对索引视图执行 DROP VIEW 时,将自动除去视图上的所有索引。使用 sp_helpindex 可显示视图上的所有索引。

通过视图进行查询时,Microsoft® SQL Server™ 将检查以确定语句中任意位置引用的所有数据库对象是否都存在,这些对象在语句的上下文中是否有效,以及数据修改语句是否没有违反任何数据完整性规则。如果检查失败,将返回错误信息。如果检查成功,则将操作转换成对基础表的操作。

如果基础表或视图自最初创建视图后已更改,则除去并重新创建视图可能很有用。

有关确定特定视图相关性的更多信息,请参见 sp_depends

有关查看视图文本的更多信息,请参见 sp_helptext

权限

默认情况下,将 DROP VIEW 权限授予视图所有者,该权限不可转让。然而,db_ownerdb_ddladmin 固定数据库角色成员和 sysadmin 固定服务器角色成员可以通过在 DROP VIEW 内显式指定所有者除去任何对象。

示例

下例删除 titles_view 视图。

USE pubs
IF EXISTS (SELECT TABLE_NAME FROM INFORMATION_SCHEMA.VIEWS
         WHERE TABLE_NAME = 'titles_view')
   DROP VIEW titles_view
GO

请参见

ALTER VIEW

CREATE VIEW

syscolumns

syscomments

sysdepends

sysobjects

sysprotects

USE