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

Come aggiungere una nuova colonna a una tabella esistente in SQL Server (T-SQL)

Quando crei una tabella in SQL Server utilizzando T-SQL, specifichi tutte le colonne per quella tabella, insieme ai relativi tipi di dati, eventuali vincoli e così via.

Ma cosa succede se un giorno decidi di aggiungere una nuova colonna a quella tabella? Come si aggiunge la nuova colonna alla tabella esistente senza creare nuovamente la tabella? Dopotutto, eliminare la tabella e ricominciare di solito non è un'opzione, poiché la tabella conterrà già dati e probabilmente non vorrai dover eseguire il backup di tutti quei dati e reinserirli dopo aver eliminato e creato la tabella.

La risposta è:ALTER TABLE dichiarazione.

La dichiarazione ALTER TABLE

Il ALTER TABLE consente di modificare una tabella esistente senza alterare la sua definizione esistente e tutti i dati che potrebbero risiedere al suo interno.

Puoi aggiungere una nuova colonna a una tabella esistente come questa:

Ecco un esempio:

ALTER TABLE Tasks
    ADD TaskDescription varchar(255) NULL;
GO

In questo esempio, aggiungiamo una nuova colonna chiamata TaskDescription alle Tasks tavolo. La nostra nuova colonna ha un tipo di dati di varchar(255) e può contenere valori nulli.

Usiamo anche GO in questo caso, che in realtà non è un comando Transact-SQL, ma è riconosciuto da sqlcmdosql utilità e Editor di codice di SQL Server Management Studio e segnala la fine di un batch di istruzioni Transact-SQL.

Controlla i risultati

Puoi controllare i risultati eseguendo una query che restituisce tutte le colonne per la tabella specificata. In questo modo:

USE Solutions;
SELECT * 
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Tasks';

Questo elenca i dettagli di tutte le colonne in Tasks tavolo. Passo al database corretto prima (in questo caso, le Solutions Banca dati). Ovviamente, dovrai modificare il database e il nome della tabella come richiesto.