MySQL จัดการ prepared statement ชื่อซ้ำอัตโนมัติ
ใน MySQL สามารถเตรียมคำสั่ง (prepare statement) ด้วยชื่อเดียวกันโดยไม่ต้อง deallocate ตัวเก่าก่อนได้ เพราะ MySQL จะ drop prepared statements อัตโนมัติ เมื่อ:
- มีการนิยามใหม่ (redefined) ด้วยชื่อเดียวกัน
- ปิดการเชื่อมต่อกับเซิร์ฟเวอร์
กล่าวคือ สามารถใช้ชื่อเดิมสำหรับ prepared statements ได้โดยไม่ต้อง deallocate อย่างชัดเจน แต่ เพื่อปล่อยหน่วยความจำฝั่งเซิร์ฟเวอร์ ควร deallocate ให้ชัดเจน
คำสั่ง DEALLOCATE:
DEALLOCATE PREPARE statement_name;
DROP PREPARE เป็น synonym สำหรับ deallocate
ตัวอย่าง:
mysql> DROP PREPARE stmt11; Query OK, 0 rows affected (0.00 sec)