Eliminare colonne da una tabella

Si applica a: SQL Server 2016 (13.x) e versioni successiveDatabase SQL di AzureIstanza gestita di SQL di AzureAzure Synapse AnalyticsPiattaforma di strumenti analitici (PDW)

Questo articolo descrive come eliminare colonne di tabella in SQL Server usando SQL Server Management Studio (SSMS) o Transact-SQL.

Attenzione

Quando si elimina una colonna da una tabella, oltre alla colonna vengono eliminati tutti i dati che contiene.

Limitazioni e restrizioni

Non è possibile eliminare una colonna con un vincolo CHECK. È necessario eliminare prima questo vincolo.

Non è possibile eliminare una colonna con i vincoli PRIMARY KEY o FOREIGN KEY o altre dipendenze tranne quando si usa Progettazione tabelle in SSMS. Quando si usa Esplora oggetti in SSMS o Transact-SQL, è necessario prima rimuovere tutte le dipendenze dalla colonna.

Autorizzazioni

È necessario disporre dell'autorizzazione ALTER per la tabella.

Eliminare colonne con Esplora oggetti

La procedura seguente illustra come eliminare colonne con Esplora oggetti in SSMS:

  1. Connessione a un'istanza del motore di database.
  2. In Esplora oggetti individuare la tabella da cui si vogliono eliminare colonne ed espandere la tabella per esporre i nomi delle colonne.
  3. Fare clic con il pulsante destro del mouse sulla colonna da eliminare e scegliere Elimina.
  4. Nella finestra di dialogo Elimina oggetto fare clic su OK.

Se la colonna contiene vincoli o altre dipendenze, un messaggio di errore viene visualizzato nella finestra di dialogo Elimina oggetto. Risolvere l'errore eliminando i vincoli a cui si fa riferimento.

Eliminare colonne con Progettazione tabelle

La procedura seguente illustra come eliminare colonne con Progettazione tabelle in SSMS:

  1. In Esplora oggettifare clic con il pulsante destro del mouse sulla tabella da cui si vogliono eliminare colonne, quindi scegliere Progettazione.
  2. Fare clic con il pulsante destro del mouse sulla colonna che si vuole eliminare e scegliere Elimina colonna dal menu di scelta rapida.
  3. Se la colonna fa parte di una relazione (FOREIGN KEY o PRIMARY KEY), verrà visualizzato un messaggio in cui viene chiesto di confermare l'eliminazione delle colonne selezionate e delle corrispondenti relazioni. Selezionare .

Eliminare colonne con Transact-SQL

È possibile eliminare colonne usando Transact-SQL in SSMS, Azure Data Studio o strumenti da riga di comando, ad esempio l'utilità sqlcmd.

L'esempio seguente mostra come eliminare una colonna.

ALTER TABLE dbo.doc_exb DROP COLUMN column_b;
GO

Se la colonna contiene vincoli o altre dipendenze, verrà restituito un messaggio di errore. Risolvere l'errore eliminando i vincoli a cui si fa riferimento.

Per altri esempi, vedere ALTER TABLE (Transact-SQL).

Passaggi successivi

Per altre informazioni sulla modifica di tabelle e sugli strumenti correlati, vedere gli articoli seguenti: