Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

วิธีใช้ prepared statements ใน MySQL

Prepared Statements ใน MySQL

MySQL server รองรับ prepared statements ซึ่งมีประโยชน์เมื่อต้องรันคำสั่งหลายคำสั่งที่แตกต่างกันเพียงรายละเอียดเล็กน้อย สามารถเตรียมคำสั่งหนึ่งครั้ง แล้ว execute หลายครั้งด้วยค่าต่างกัน ได้ประสิทธิภาพดีกว่าเพราะคำสั่งถูก parse โดยเซิร์ฟเวอร์เพียงครั้งเดียว

ขั้นตอนการใช้งาน:

1. PREPARE - เตรียมคำสั่ง

PREPARE stmt FROM 'Select tender_value from Tender Where Companyname = ?';

2. EXECUTE - รันคำสั่งที่เตรียมไว้

EXECUTE stmt USING @variable_name;

@variable_name จะมีค่าที่จะส่งไปแทนที่ ? ใน PREPARE statement ต้อง SET ค่าก่อน execute

3. DEALLOCATE - ปล่อยคำสั่งที่เตรียมไว้

DEALLOCATE PREPARE stmt;

ตัวอย่างเต็ม:

mysql> PREPARE stmt FROM 'SELECT tender_value from Tender WHERE Companyname = ?';
Query OK, 0 rows affected (0.09 sec)
Statement prepared

mysql> SET @A = 'Singla Group.';
Query OK, 0 rows affected (0.00 sec)

mysql> EXECUTE stmt using @A;
+--------------+
| tender_value |
+--------------+
| 220.255997   |
+--------------+
1 row in set (0.07 sec)

mysql> DEALLOCATE PREPARE stmt;
Query OK, 0 rows affected (0.00 sec)