在本教程中,将学习如何使用SQL Server DROP VIEW
语句删除现有视图。
要从数据库中删除视图,请使用DROP VIEW
语句,它的语法如下所示:
DROP VIEW [IF EXISTS] schema_name.view_name;
在此语法中,可以指定要在DROP VIEW
关键字后删除的视图的名称。 如果视图属于模式,则还必须显式指定视图所属的模式的名称。
如果尝试删除不存在的视图,SQL Server将发出错误。 IF EXISTS
子句可防止在删除不存在的视图时发生错误。
要删除多个视图,请使用以下语法:
DROP VIEW [IF EXISTS]
schema_name.view_name1,
schema_name.view_name2,
...;
在此语法中,视图由逗号分隔。请注意,删除视图时,SQL Server将删除该视图的所有权限。
SQL Server DROP VIEW示例
下面将使用CREATE VIEW
教程中创建的sales.daily_sales
和sales.staff_sales
视图进行演示。
1. 删除一个视图示例
以下示例显示如何从示例数据库中删除sales.daily_sales
视图:
2. 删除多个视图示例
以下语句创建名为product_catalogs
的视图,它用于演示目的:
CREATE VIEW sales.product_catalog
AS
SELECT
product_name,
category_name,
brand_name,
list_price
FROM
production.products p
INNER JOIN production.categories c
ON c.category_id = p.category_id
INNER JOIN production.brands b
ON b.brand_id = p.brand_id;
以下语句同时删除sales.staff_sales
和sales.product_catalog
视图:
DROP VIEW IF EXISTS
sales.staff_sales,
sales.product_catalogs;