เมื่อเราได้ออกแบบและสร้าง table
ไปแล้ว ต่อมาภายหลังจากใช้ database
ไประยะหนึ่งพบว่าต้องการแก้ table MySQL
ได้เตรียมคำสั่งสำหรับแก้ไขตารางไว้ให้แล้ว
แต่การแก้ไขภายหลังจำเป็นต้องใช้ความระมัดระวังอย่างมาก
เนื่องจากภายใน table นั้นได้มีการ add
data ไว้เรียบร้อยแล้ว
รูปแบบของคำสั่งแก้ไขข้อมูลเป็นดังนี้
รูปแบบคำสั่งการแก้ไข table
ALTER TABLE tableold RENAME
tablenew;
หรือ
ALTER TABLE table ADD
fiednew DATATYPE;
คำอธิบาย
ALTER TABLE tableold RENAMEt
ablenew;
ALTER TABLE เป็นคำสั่งแก้ไข table
tableold เป็นชื่อของ table เดิม
RENAME ให้แก้ไขเปลี่ยนชื่อตาราง
tablenew เป็นชื่อของ
table ใหม่ที่เราต้องการให้แก้ไข
หรือ
ALTER TABLE table ADDfiednewDATATYPE;
ALTER TABLE เป็นคำสั่งแก้ไข table
table เป็นชื่อของ table
ที่ต้องการแก้ไข
ADD ให้แก้ไขเปลี่ยนเพิ่ม
field เข้าไปใหม่
fiednew เป็นชื่อของ
field
ใหม่ที่เราต้องการแก้ไขเพิ่มเติม
DATATYPE
เป็นลักษณะของ fild
ใหม่ที่เราต้องการให้เพิ่มเติมลงไป
ตัวอย่าง
ALTER
TABLE tableold RENAMEtablenew;
ALTER TABLE tableADDfiednewDATATYPE;
|
ให้แก้ไขชื่อ table
phonebook โดยเปลี่ยนชื่อเป็น phonebooknew
จากนั้นใช้คำสั่ง SHOW
table ดูว่า ได้แก้ไขสำเร็จหรือไม่
จากนั้นให้แก้กลับมาเป็นชื่อ
phonebook เหมือนเดิม
ผลลัพธ์ที่ได้ดังภาพข้างล่าง
mysql> ALTER TABLE phonebook RENAME phonebooknew;
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> show tables;
+--------------------+
| Tables in datatest |
+--------------------+
| phonebooknew |
+--------------------+
1 row in set (0.00 sec)
mysql>
mysql> ALTER TABLE phonebooknew RENAME phonebook;
Query OK, 0 rows affected (0.01 sec)
mysql>
mysql> show tables;
+--------------------+
| Tables in datatest |
+--------------------+
| phonebook |
+--------------------+
1 row in set (0.00 sec)
mysql>
|
เมื่อสร้าง table
ได้ก็ต้องลบได้เช่น
แต่ก่อนลบจะต้องมั่นใจก่อนว่า
จะลบ table จริงๆ
มิฉะนั้นแล้วข้อมูลของบริษัทหรือองค์กร
ก็จะหายไปในทันที ทางที่ดีควร backup
ไว้ก่อน รูปแบบคำสั่งเป็นดังนี้
รูปแบบคำสั่งการลบ table ใน file database
DROP TABLE tablename คำอธิบาย
DROP TABLE tablename
DROP TABLE เป็นคำสั่งลบ table
tablename เป็นชื่อ table ที่ต้องการลบ
ตัวอย่าง
DROP TABLE phonebook;
|
ให้ลบ table phonebook
จากนั้น ตรวจสอบว่า table phone
ยังอยู่หรือไม่
ผลลัพธ์ที่ได้ดังภาพ
mysql> mysql> DROP TABLE
phonebook;
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql> SHOW TABLES;
Empty set (0.01 sec)
mysql> |
หลังจากลบ
table phonebook แล้ว โปรแกรม จะรายงานว่า Query
OK คือได้ทำการลบเสร็จแล้ว
และเมื่อใช้คำสั่ง SHOW TABLE ก็ไม่พบ table
ใดๆ (กรณีที่มี table table เดียว)
Tip
การแก้ Table
ส่วนใหญ่แล้วจะไม่ค่อยทำกัน
เนื่องจากว่าถ้ามีข้อผิดพลาดเกิดขึ้น
อาจส่งผลกระทบต่อ
ข้อมูลที่มีอยู่ได้ ดังนั้นควร
ออกแบบ table ให้คำนึงถึงอนาคตด้วย
และในทุกครั้งที่มีการแก้ไข table
ต้องทำการ backup ข้อมูลทุกครั้ง
Copyright By Passkorn Roungrong 2000 |