Modifica la struttura di una tabella dopo che è stata creata con l'istruzione CREATE TABLE.
Nota: Il motore di database di Microsoft Access non supporta l'uso di ALTER TABLE o di una qualsiasi istruzione DDL con database non Microsoft Access. In alternativa, usare i metodi DAO Create.
Sintassi
ALTER TABLE tabella {ADD {COLUMN tipo di campo[(dimensioni)] [NOT NULL] [CONSTRAINT indice] |
ALTER COLUMN tipo di campo[(dimensioni)] |
CONSTRAINT indicecampo multicampo} |
DROP {COLUMN field I CONSTRAINT nomeindice} }
L'istruzione ALTER TABLE è composta dalle parti seguenti:
Parte |
Descrizione |
tabella |
Nome della tabella da modificare. |
campo |
Nome del campo da aggiungere o eliminare dalla tabella. In alternativa, nome del campo da modificare nella tabella. |
tipo |
Tipo di dati del campo. |
dimensioni |
Dimensioni del campo in caratteri (solo campi Testo e Binario). |
indice |
Indice per il campo. |
indicemulticampo |
Definizione di un indice multicampo da aggiungere alla tabella. |
nomeindice |
Nome dell'indice multicampo da rimuovere. |
Osservazioni
L'istruzione ALTER TABLE consente di modificare una tabella esistente in diversi modi. È possibile:
-
Usare ADD COLUMN per aggiungere un nuovo campo alla tabella. È possibile specificare il nome del campo, il tipo di dati e, per i campi Testo e Binario, le dimensioni facoltative. Ad esempio, l'istruzione seguente consente di aggiungere alla tabella Employees un campo Testo di 25 caratteri denominato Notes:
ALTER TABLE Employees ADD COLUMN Notes TEXT(25)
È anche possibile definire un indice su tale campo.
Se si specifica NOT NULL per un campo, i nuovi record dovranno contenere dati validi in tale campo.
-
Usare ALTER COLUMN per modificare il tipo di dati di un campo esistente. È possibile specificare il nome del campo, il nuovo tipo di dati e dimensioni facoltative per i campi Testo e Binario. Ad esempio, l'istruzione seguente consente di cambiare il tipo di dati di un campo della tabella Employees denominato ZipCode (definito in origine come Integer) in un campo Testo di 10 caratteri:
ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10)
-
Usare ADD CONSTRAINT per aggiungere un indice multicampo.
-
Usare DROP COLUMN per eliminare un campo. È possibile specificare solo il nome del campo.
-
Usare DROP CONSTRAINT per eliminare un indice multicampo. È possibile specificare solo il nome dell'indice dopo la parola riservata CONSTRAINT.
Note:
-
Non è possibile aggiungere o eliminare più di un campo o indice alla volta.
-
È possibile usare l'istruzione CREATE INDEX per aggiungere un indice a campo singolo o multicampo a una tabella e un'istruzione ALTER TABLE o DROP per eliminare un indice creato con ALTER TABLE o CREATE INDEX.
-
È possibile usare NOT NULL in un campo singolo o in una clausola CONSTRAINT denominata che si applica a una clausola CONSTRAINT denominata a campo singolo o multicampo. Tuttavia, è possibile applicare la limitazione NOT NULL a un campo una sola volta. Se si prova ad applicare questa limitazione più volte, verrà restituito un errore di runtime.
-