DROP SCHEMA (Transact-SQL)
Quita un esquema de la base de datos.
Sintaxis
DROP SCHEMA schema_name
Argumentos
- schema_name
Es el nombre por el que se conoce el esquema en la base de datos.
Notas
El esquema que se va a quitar no puede contener objetos. Si el esquema contiene objetos, la instrucción DROP registrará errores.
Puede ver la información acerca de los esquemas en la vista de catálogo sys.schemas.
Caution El comportamiento de los esquemas cambió en SQL Server 2005. En consecuencia, el código que supone que los esquemas son equivalentes a los usuarios de base de datos puede dejar de devolver resultados correctos. Las antiguas vistas de catálogo, incluida sysobjects, no se deben usar en una base de datos en la que se haya utilizado alguna vez cualquiera de las siguientes instrucciones DDL: 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. En esas bases de datos, debe usar las nuevas vistas de catálogo. En las nuevas vistas de catálogo se tiene en cuenta la separación de entidades de seguridad y esquemas que se estableció en SQL Server 2005. Para obtener más información sobre las vistas de catálogo, vea Vistas de catálogo (Transact-SQL).
Permisos
Requiere el permiso CONTROL en el esquema o el permiso ALTER ANY SCHEMA en la base de datos.
Ejemplos
El siguiente ejemplo comienza con una única instrucción CREATE SCHEMA. La instrucción crea el esquema Sprockets que es propiedad de Krishna y la tabla Sprockets.NineProngs, concede el permiso SELECT a Anibal y deniega el permiso SELECT a 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
Para quitar el esquema, siga las siguientes instrucciones. Tenga en cuenta que debe quitar primero la tabla contenida en el esquema.
DROP TABLE Sprockets.NineProngs;
DROP SCHEMA Sprockets;
GO
Vea también