MariaDB - Alter Command
Il comando ALTER fornisce un modo per modificare la struttura di una tabella esistente, ovvero modifiche come la rimozione o l'aggiunta di colonne, la modifica degli indici, la modifica dei tipi di dati o la modifica dei nomi. ALTER attende inoltre di applicare le modifiche quando è attivo un blocco dei metadati.
Utilizzo di ALTER per modificare le colonne
ALTER abbinato a DROP rimuove una colonna esistente. Tuttavia, non riesce se la colonna è l'unica colonna rimanente.
Rivedi l'esempio fornito di seguito:
mysql> ALTER TABLE products_tbl DROP version_num;
Usa un'istruzione ALTER ... ADD per aggiungere colonne -
mysql> ALTER TABLE products_tbl ADD discontinued CHAR(1);
Utilizza le parole chiave PRIMA e DOPO per specificare il posizionamento della colonna -
ALTER TABLE products_tbl ADD discontinued CHAR(1) FIRST;
ALTER TABLE products_tbl ADD discontinued CHAR(1) AFTER quantity;
Nota che le parole chiave FIRST e AFTER si applicano solo alle istruzioni ALTER ... ADD. Inoltre, è necessario rilasciare una tabella e quindi aggiungerla per riposizionarla.
Modificare una definizione o un nome di colonna utilizzando la clausola MODIFY o CHANGE in un'istruzione ALTER. Le clausole hanno effetti simili, ma utilizzano una sintassi sostanzialmente diversa.
Rivedi un esempio di MODIFICA fornito di seguito:
mysql> ALTER TABLE products_tbl CHANGE discontinued status CHAR(4);
In un'istruzione che utilizza CHANGE, specificare la colonna originale e quindi la nuova colonna che la sostituirà. Rivedi un esempio di MODIFICA di seguito:
mysql> ALTER TABLE products_tbl MODIFY discontinued CHAR(4);
Il comando ALTER consente anche di modificare i valori predefiniti. Rivedi un esempio:
mysql> ALTER TABLE products_tbl ALTER discontinued SET DEFAULT N;
Puoi anche usarlo per rimuovere i vincoli predefiniti associandolo a una clausola DROP -
mysql> ALTER TABLE products_tbl ALTER discontinued DROP DEFAULT;
Utilizzo di ALTER per modificare le tabelle
Cambia il tipo di tabella con la clausola TYPE -
mysql> ALTER TABLE products_tbl TYPE = INNODB;
Rinomina una tabella con la parola chiave RENAME -
mysql> ALTER TABLE products_tbl RENAME TO products2016_tbl;