Lệnh ALTER TABLE trong SQLite sửa đổi một bảng đang tồn tại mà không cần thiết phải nạp lại dữ liệu đó. Bạn có thể sử dụng lệnh ALTER TABLE để thay tên một bảng và bổ sung thêm các cột vào một bảng đang tồn tại.
SQLite không hỗ trợ các tính năng khác của lệnh ALTER TABLE ngoại trừ hai tính năng trên.
Cú pháp cơ bản của lệnh ALTER TABLE để thay tên một bảng đang tồn tại như sau:
ALTER TABLE database_name.table_name RENAME TO new_table_name;
Cú pháp cơ bản của lệnh ALTER TABLE để bổ sung thêm một cột vào một bảng đang tồn tại như sau:
ALTER TABLE database_name.table_name ADD COLUMN column_def...;
Ví dụ
Bạn theo dõi bảng COMPANY có các bản ghi sau:
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
Sau đây, chúng ta thử thay tên bảng này bởi sử dụng lệnh ALTER TABLE như sau:
sqlite> ALTER TABLE COMPANY RENAME TO OLD_COMPANY;
Lệnh SQLite trên sẽ thay tên bảng COMPANY thành OLD_COMPANY. Bây giờ, chúng ta thử thêm một cột vào trong bảng OLD_COMPANY này như sau:
sqlite> ALTER TABLE OLD_COMPANY ADD COLUMN SEX char(1);
Lúc này, bảng COMPANY đã bị thay đổi, và có các bản ghi sau với lệnh 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
Bạn sẽ chú ý thấy rằng, cột được bổ sung thêm sẽ được điền đầy với các giá trị NULL.