sqlite

base de données relationnelle intégrée

alter

Anglais [??:lt?(r)] US [??lt?]

vt Changer; ancien

vi. modifier

Commande SQLite Modifier syntaxe

Fonction?:?La commande ALTER TABLE de SQLite ne modifie pas les tables existantes en effectuant un vidage complet et un rechargement des données. Vous pouvez utiliser l'instruction ALTER TABLE pour renommer une table et ajouter des colonnes supplémentaires à une table existante.

Dans SQLite, la commande ALTER TABLE ne prend pas en charge d'autres opérations sauf renommer les tables et ajouter des colonnes aux tables existantes.

Syntaxe?: La syntaxe de base de ALTER TABLE utilisée pour renommer une table existante est la suivante?:

ALTER TABLE nom_base_de_données.nom_table RENAME TO new_table_name;

Utilisé pour ajouter une nouvelle colonne à une table existante La syntaxe de base de ALTER TABLE est le suivant?:

ALTER TABLE nom_base de données.nom_table ADD COLUMN column_def...;

Commande SQLite Modifier exemple

 COMPANY 表有如下記錄:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0
現(xiàn)在,讓我們嘗試使用 ALTER TABLE 語(yǔ)句重命名該表,如下所示:

sqlite> ALTER TABLE COMPANY RENAME TO OLD_COMPANY;
上面的 SQLite 語(yǔ)句將重命名 COMPANY 表為 OLD_COMPANY?,F(xiàn)在,讓我們嘗試在 OLD_COMPANY 表中添加一個(gè)新的列,如下所示:

sqlite> ALTER TABLE OLD_COMPANY ADD COLUMN SEX char(1);
現(xiàn)在,COMPANY 表已經(jīng)改變,使用 SELECT 語(yǔ)句輸出如下:

ID          NAME        AGE         ADDRESS     SALARY      SEX
----------  ----------  ----------  ----------  ----------  ---
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0
請(qǐng)注意,新添加的列是以 NULL 值來(lái)填充的。