sqlite Alterコマンド

1888 ワード

SQLiteのALTER TABLEコマンドは、完全なダンプとデータのリロードを実行することによって既存のテーブルを変更しません.ALTER TABLE文を使用してテーブルの名前を変更したり、ALTER TABLE文を使用して既存のテーブルに追加のカラムを追加したりすることができます.SQLiteでは、テーブルの名前変更や既存のテーブルにカラムを追加する以外は、ALTER TABLEコマンドではサポートされていません.
構文
既存のテーブルの名前を変更する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...;
実例
私たちの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値で埋め込まれていることに注意してください.
注意
drop columnは一時的にサポートされていません.列を削除するには、「http://blog.csdn.net/stan1989/article/details/8570187
【参考文献】http://www.runoob.com/sqlite/sqlite-alter-command.html