SQLite - แก้ไขคำสั่งตาราง

SQLite ALTER TABLEคำสั่งแก้ไขตารางที่มีอยู่โดยไม่ต้องดำเนินการดัมพ์ทั้งหมดและโหลดข้อมูลซ้ำ คุณสามารถเปลี่ยนชื่อตารางโดยใช้คำสั่ง ALTER TABLE และสามารถเพิ่มคอลัมน์เพิ่มเติมในตารางที่มีอยู่ได้โดยใช้คำสั่ง ALTER TABLE

ไม่มีการดำเนินการอื่นที่สนับสนุนโดยคำสั่ง ALTER TABLE ใน SQLite ยกเว้นการเปลี่ยนชื่อตารางและเพิ่มคอลัมน์ในตารางที่มีอยู่

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์พื้นฐานของ ALTER TABLE เพื่อ RENAME ตารางที่มีอยู่

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