Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Come rimuovere una colonna in SQL Server utilizzando T-SQL

In SQL Server è possibile creare, modificare e rimuovere oggetti di database utilizzando un'interfaccia utente grafica (come l'utilizzo degli strumenti GUI in SQL Server Management Studio) oppure è possibile utilizzare Transact-SQL per eseguire le stesse attività. In effetti, gli strumenti della GUI utilizzano effettivamente T-SQL dietro le quinte per eseguire queste attività.

Quando si utilizza Transact-SQL, è possibile rimuovere una colonna da una tabella utilizzando ALTER TABLE dichiarazione. Questa istruzione consente di modificare la definizione di una tabella specificando esattamente le modifiche necessarie. Nel nostro caso, richiediamo la rimozione di una colonna.

Esempio

ALTER TABLE Tasks
    DROP COLUMN TaskCode;
GO

Questo esempio rimuove/(elimina) la colonna denominata TaskCode dalla tabella chiamata Tasks . Questo è tutto ciò che dobbiamo fare per rimuovere la colonna.

In questo caso utilizziamo anche GO . Questo in realtà non fa parte di T-SQL ma è riconosciuto da alcune utility per segnalare la fine di un batch di istruzioni T-SQL.

Errore di vincolo?

In alcuni casi potresti ricevere un errore di vincolo quando tenti di eliminare una colonna da una tabella. Se ciò accade, è perché la colonna che stai tentando di rimuovere ha un vincolo che deve essere rimosso prima.

In questo caso, elimina prima semplicemente il vincolo, quindi rilascia la colonna.

Ecco un esempio di eliminazione di un vincolo, quindi di eliminazione della tabella:

-- Drop the constraint
ALTER TABLE Tasks
    DROP CONSTRAINT taskcode_unique;
GO

-- Drop the column
ALTER TABLE Tasks
    DROP COLUMN TaskCode;
GO

Questo esempio elimina un vincolo chiamato taskcode_unique , quindi rilascia la colonna denominata TaskCode .