ระวังเมื่อตรวจสอบการมีอยู่ด้วยคำสั่ง like!
หากในชุดของเหตุการณ์ที่โชคร้ายตัวแปรของคุณจะว่างเปล่าและคุณจะดำเนินการสิ่งนี้:
SHOW DATABASES like '' -- dangerous!
มันจะส่งคืนฐานข้อมูลทั้งหมดดังนั้นจึงแจ้งสคริปต์การโทรว่ามีอยู่ตั้งแต่บางแถวถูกส่งคืน
เป็นวิธีที่ปลอดภัยและดีกว่ามากในการใช้เครื่องหมาย"="เท่ากันเพื่อทดสอบการมีอยู่
วิธีที่ถูกต้องและปลอดภัยในการทดสอบการมีอยู่ควรเป็น:
SHOW DATABASES WHERE `database` = 'xxxxx' -- safe way to test for existence
โปรดทราบว่าคุณต้องตัดฐานข้อมูลชื่อคอลัมน์ด้วย backticks มันไม่สามารถใช้ไวยากรณ์ที่ผ่อนคลายในกรณีนี้
ด้วยวิธีนี้หากรหัสที่สร้างตัวแปร 'xxxxx' คืนค่าว่างแสดง SHOW DATABASES จะไม่ส่งคืนฐานข้อมูลทั้งหมด แต่จะส่งคืนชุดว่าง