📜  SQL Server 中的 DROP SCHEMA

📅  最后修改于: 2021-09-09 10:21:18             🧑  作者: Mango

DROP SCHEMA语句可用于从数据库中删除模式。 SQL Server 有一些内置架构,例如:dbo、guest、sys 和 INFORMATION_SCHEMA,它们不能被删除。

句法 :

DROP SCHEMA [IF EXISTS] schema_name;

注意:在删除架构之前从架构中删除所有对象。如果架构中有任何对象,则输出将是错误的。

例子 :
让我们创建一个名为 geeksh 的新模式(https://www.geeksforgeeks.org/create-schema-in-sql-server/);

CREATE SCHEMA geeksh;
GO

现在在geeksh模式中创建一个名为geektab 的表:

CREATE TABLE geeksh.geektab
(id INT PRIMARY KEY,
date DATE NOT NULL,
city varchar(200) NOT NULL);

删除架构 geeksh :

DROP SCHEMA geeksh;
SQL Server 将抛出类似的错误,因为架构不为空。

Msg 3729, Level 16, State 1, Line 1
Cannot drop schema 'geeksh' because it is being referenced by object 'geektab'.

让我们删除表 geeksh.geektab :

DROP TABLE geeksh.geektab;

再次运行 DROP SCHEMA 以删除 geeksh 模式:

DROP SCHEMA IF EXISTS geeksh;

现在,geeksh 模式已从数据库中删除。