sqlite

penggunaan pangkalan data; lama

vi

Perintah SQLite Alter sintaks

Fungsi: Arahan ALTER TABLE SQLite tidak mengubah suai jadual sedia ada dengan melakukan pembuangan lengkap dan muat semula data. Anda boleh menggunakan pernyataan ALTER TABLE untuk menamakan semula jadual dan menambah lajur tambahan pada jadual sedia ada.

Dalam SQLite, arahan ALTER TABLE tidak menyokong operasi lain kecuali menamakan semula jadual dan menambah lajur pada jadual sedia ada.

Sintaks: Sintaks asas ALTER TABLE yang digunakan untuk menamakan semula jadual sedia ada adalah seperti berikut:

ALTER TABLE database_name.table_name RENAME TO new_table_name;

Digunakan untuk menambah lajur asas baharu pada jadual sedia ada ALTER TABLE adalah seperti berikut:

ALTER TABLE database_name.table_name TAMBAH COLUMN column_def...;

Perintah SQLite Alter contoh

 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
现在,让我们尝试使用 ALTER TABLE 语句重命名该表,如下所示:

sqlite> ALTER TABLE COMPANY RENAME TO OLD_COMPANY;
上面的 SQLite 语句将重命名 COMPANY 表为 OLD_COMPANY。现在,让我们尝试在 OLD_COMPANY 表中添加一个新的列,如下所示:

sqlite> ALTER TABLE OLD_COMPANY ADD COLUMN SEX char(1);
现在,COMPANY 表已经改变,使用 SELECT 语句输出如下:

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
请注意,新添加的列是以 NULL 值来填充的。