SQLite Alter 命令
sqlite alter 命令
sqlite 的 alter table 命令不通過執(zhí)行一個完整的轉(zhuǎn)儲和數(shù)據(jù)的重載來修改已有的表。您可以使用 alter table 語句重命名表,使用 alter table 語句還可以在已有的表中添加額外的列。
在 sqlite 中,除了重命名表和在已有的表中添加列,alter table 命令不支持其他操作。
1. 語法
用來重命名已有的表的 alter table 的基本語法如下:
alter table database_name.table_name rename to new_table_name;
用來在已有的表中添加一個新的列的 alter table 的基本語法如下:
alter table database_name.table_name add column column_def...;
假設(shè)我們的 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 語句重命名該表,如下所示:
sqlite> alter table company rename to old_company;
上面的 sqlite 語句將重命名 company 表為 old_company?,F(xiàn)在,讓我們嘗試在 old_company 表中添加一個新的列,如下所示:
sqlite> alter table old_company add column sex char(1);
現(xiàn)在,company 表已經(jīng)改變,使用 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 值來填充的。