Condividi tramite


DROP SCHEMA (Transact-SQL)

Rimuove uno schema dal database.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

DROP SCHEMA schema_name

Argomenti

  • 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.

ms186751.Caution(it-it,SQL.90).gifAttenzione:
Il funzionamento degli schemi in SQL Server 2005 è diverso rispetto alle versioni precedenti di SQL Server. È possibile che il codice in cui gli schemi sono 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 DLL 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 questi database è necessario utilizzare le nuove viste del catalogo, in cui si tiene conto della separazione tra entità e schemi introdotta in SQL Server 2005. Per ulteriori 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 tabellaSprockets.NineProngs, quindi concede l'autorizzazione SELECT ad Anibal e nega l'autorizzazione 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

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

Vedere anche

Riferimento

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

Altre risorse

Separazione fra schema e utente

Guida in linea e informazioni

Assistenza su SQL Server 2005