เปรียบเทียบคำสั่ง DELETE และ DROP ใน SQL
DELETE
- ลบบาง/ทุก Tuples/Records จาก Relation/Table
- เป็น DML (Data Manipulation Language)
- ใช้ WHERE Clause กรอง
- Rollback ได้ (ทำงานบน Data Buffer)
- Memory Space ไม่ว่างแม้ลบทั้งหมด
- อาจเจอ Memory Shortage
DROP
- ลบ Named Elements ของ Schema: Relations/Tables, Constraints, หรือ Schema ทั้งหมด
- เป็น DDL (Data Definition Language)
- ไม่ใช้ WHERE Clause
- Rollback ไม่ได้ (ทำงานบน Data โดยตรง)
- Plug Memory Space
- อาจก่อให้เกิด Memory Fragmentation
สรุป
| คุณสมบัติ | DELETE | DROP |
|---|---|---|
| ประเภท | DML | DDL |
| ระดับ | Data (Rows) | Schema (Structure) |
| WHERE Clause | ได้ | ไม่ได้ |
| Rollback | ได้ | ไม่ได้ |
| Memory | ไม่ว่าง | ว่าง |