DROP SCHEMA (Transact-SQL)
Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics Piattaforma di strumenti analitici (PDW) Endpoint di analisi SQL in Microsoft Fabric Warehouse in Microsoft Fabric
Rimuove uno schema dal database.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
-- Syntax for SQL Server and Azure SQL Database
DROP SCHEMA [ IF EXISTS ] schema_name
-- Syntax for Azure Synapse Analytics and Parallel Data Warehouse
DROP SCHEMA schema_name
Argomenti
IF EXISTS
Si applica a: SQL Server ( SQL Server 2016 (13.x) fino alla versione corrente).
Rimuove in modo condizionale lo schema solo se esiste già.
schema_name
Nome con il quale è noto lo schema all'interno del database.
Osservazioni:
Lo schema da rimuovere non deve contenere oggetti, in caso contrario l'istruzione DROP avrà esito negativo.
Le informazioni sugli schemi sono visibili nella vista del catalogo sys.schemas.
Attenzione A partire da SQL Server 2005, il funzionamento degli schemi è stato modificato. È pertanto possibile che il codice in cui gli schemi vengono considerati equivalenti agli utenti del database non restituisca risultati corretti. Non utilizzare le viste del catalogo delle versioni precedenti, inclusa sysobjects, nei database in cui sia già stata utilizzata una delle istruzioni DDL seguenti: 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 tali database è invece necessario usare le nuove viste del catalogo. Le nuove viste del catalogo prendono in considerazione la separazione tra entità e schemi introdotta in SQL Server 2005. Per altre informazioni sulle viste del catalogo, vedere Viste del catalogo (Transact-SQL).
Autorizzazioni
È richiesta l'autorizzazione CONTROL per lo schema o l'autorizzazione ALTER ANY SCHEMA per il database.
Esempi
L'esempio seguente inizia con una singola istruzione CREATE SCHEMA
. Tale istruzione crea lo schema Sprockets
di proprietà di Krishna
e la tabella Sprockets.NineProngs
, quindi concede l'autorizzazione SELECT
ad Anibal
e nega l'autorizzazione SELECT
a Hung-Fu
.
CREATE SCHEMA Sprockets AUTHORIZATION Krishna
CREATE TABLE NineProngs (source INT, cost INT, partnumber INT)
GRANT SELECT TO Anibal
DENY SELECT TO [Hung-Fu];
GO
Le istruzioni seguenti rimuovono lo schema. Si noti che è prima necessario rimuovere la tabella contenuta nello schema.
DROP TABLE Sprockets.NineProngs;
DROP SCHEMA Sprockets;
GO
Vedi anche
CREATE SCHEMA (Transact-SQL)
ALTER SCHEMA (Transact-SQL)
DROP SCHEMA (Transact-SQL)
EVENTDATA (Transact-SQL)