Freigeben über


DROP SCHEMA (Transact-SQL)

Entfernt ein Schema aus der Datenbank.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

DROP SCHEMA schema_name

Argumente

  • schema_name
    Der Name des Schemas in der Datenbank.

Hinweise

Das zu löschende Schema darf keine Objekte enthalten. Falls das Schema Objekte enthält, erzeugt die DROP-Anweisung einen Fehler.

Informationen zu Schemas werden in der sys.schemas-Katalogsicht angezeigt.

ms186751.Caution(de-de,SQL.90).gifVorsicht:
Das Verhalten der Schemas in SQL Server 2005 unterscheidet sich von dem in früheren Versionen von SQL Server. Code, in dem vorausgesetzt wird, dass Schemas Datenbankbenutzern entsprechen, gibt möglicherweise nicht die richtigen Ergebnisse zurück. Alte Katalogsichten, einschließlich sysobjects, sollten nicht in einer Datenbank verwendet werden, in der jemals eine der folgenden DDL-Anweisungen verwendet wurde: CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA, CREATE USER, ALTER USER, DROP USER, CREATE ROLE, ALTER ROLE, DROP ROLE, CREATE APPROLE, ALTER APPROLE, DROP APPROLE, ALTER AUTHORIZATION. In einer Datenbank, in der jemals eine dieser Anweisungen verwendet wurde, müssen Sie die neuen Katalogsichten verwenden. In den neuen Katalogsichten wird die Trennung zwischen Prinzipalen und Schemas berücksichtigt, die in SQL Server 2005 eingeführt wird. Weitere Informationen zu Katalogsichten finden Sie unter Katalogsichten (Transact-SQL).

Berechtigungen

Erfordert die CONTROL-Berechtigung für das Schema oder die ALTER ANY SCHEMA-Berechtigung für die Datenbank.

Beispiele

Das folgende Beispiel beginnt mit einer einzelnen CREATE SCHEMA-Anweisung. Von der Anweisung werden das Sprockets-Schema, das sich im Besitz von Krishna befindet, und die Sprockets.NineProngs-Tabelle erstellt. Anschließend wird die SELECT-Berechtigung für Anibal erteilt und die SELECT-Berechtigung für Hung-Fu verweigert.

USE AdventureWorks;
GO
CREATE SCHEMA Sprockets AUTHORIZATION Krishna 
    CREATE TABLE NineProngs (source int, cost int, partnumber int)
    GRANT SELECT TO Anibal 
    DENY SELECT TO Hung-Fu;
GO

Mit den folgenden Anweisungen wird das Schema gelöscht. Beachten Sie, dass zunächst die Tabelle gelöscht werden muss, die sich im Schema befindet.

DROP TABLE Sprockets.NineProngs;
DROP SCHEMA Sprockets;
GO

Siehe auch

Verweis

CREATE SCHEMA (Transact-SQL)
ALTER SCHEMA (Transact-SQL)
DROP SCHEMA (Transact-SQL)
EVENTDATA (Transact-SQL)

Andere Ressourcen

Trennung von Benutzer und Schema

Hilfe und Informationen

Informationsquellen für SQL Server 2005