DROP SCHEMA (Transact-SQL)
Permet de supprimer un schéma de la base de données.
Conventions de la syntaxe de Transact-SQL
Syntaxe
DROP SCHEMA schema_name
Arguments
- schema_name
Nom sous lequel le schéma est connu dans la base de données.
Notes
Le schéma à supprimer ne doit contenir aucun objet. Si le schéma contient des objets, l'instruction DROP échoue.
Des informations sur les schémas sont consultables dans l'affichage catalogue sys.schemas.
Attention : |
---|
Dans SQL Server 2005, le comportement des schémas diffère du comportement dans les versions antérieures de SQL Server. Un code qui suppose que les schémas sont équivalents aux utilisateurs de base de données peut renvoyer des résultats incorrects. Vous ne devez pas recourir aux anciens affichages catalogue, notamment sysobjects, dans une base de données où une des instructions DDL suivantes a été utilisée : CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA, CREATE USER, ALTER USER, DROP USER, CREATE ROLE, ALTER ROLE, DROP ROLE, CREATE APPROLE, ALTER APPROLE, DROP APPROLE ou ALTER AUTHORIZATION. Dans une base de données où une de ces instructions a été utilisée, vous devez recourir aux nouveaux affichages catalogue. Les nouveaux affichages catalogue prennent en compte la séparation des entités de sécurité et des schémas introduite dans SQL Server 2005. Pour plus d'informations sur les affichages catalogue, consultez Affichages catalogue (Transact-SQL). |
Autorisations
Requiert l'autorisation CONTROL sur le schéma ou l'autorisation ALTER ANY SCHEMA sur la base de données.
Exemples
L'exemple ci-dessous commence avec une instruction CREATE SCHEMA
unique. L'instruction crée le schéma Sprockets
, qui est la propriété de Krishna
, et une table Sprockets.NineProngs
, puis accorde l'autorisation SELECT
à Anibal
et refuse l'autorisation SELECT
à Hung-Fu
.
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
Les instructions ci-dessous permettent de supprimer le schéma. Notez que vous devez commencer par supprimer la table que contient le schéma.
DROP TABLE Sprockets.NineProngs;
DROP SCHEMA Sprockets;
GO
Voir aussi
Référence
CREATE SCHEMA (Transact-SQL)
ALTER SCHEMA (Transact-SQL)
DROP SCHEMA (Transact-SQL)
EVENTDATA (Transact-SQL)
Autres ressources
Séparation du schéma et de l'utilisateur