เราสามารถสร้างกระบวนงานที่เก็บไว้ด้วยตัวดำเนินการ IN เพื่ออัปเดตค่าในตาราง MySQL เพื่อให้เข้าใจ เรากำลังยกตัวอย่างของตารางชื่อ 'student_info' ซึ่งมีข้อมูลดังต่อไปนี้ -
mysql> Select * from student_info; +------+---------+------------+------------+ | id | Name | Address | Subject | +------+---------+------------+------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Jaipur | Literature | | 110 | Rahul | Chandigarh | History | | 125 | Raman | Bangalore | Computers | +------+---------+------------+------------+ 4 rows in set (0.01 sec)
ตอนนี้โดยการสร้างขั้นตอนชื่อ 'update_studentinfo' ดังต่อไปนี้ เราสามารถอัปเดตค่าในตาราง 'student_info' -
mysql> DELIMITER // ; mysql> Create Procedure Update_studentinfo ( IN p_id INT, IN p_address varchar(20)) -> BEGIN -> UPDATE student_info -> SET -> address = p_address WHERE id = p_id; -> END // Query OK, 0 rows affected (0.13 sec)
ตอนนี้ เรียกใช้โพรซีเดอร์ด้วยค่าที่เราต้องการอัปเดตในตารางดังนี้ −
mysql> Delimiter ; // mysql> CALL Update_studentinfo(125, 'Shimla'); Query OK, 1 row affected (0.14 sec) mysql> Select * from student_info; +------+---------+------------+------------+ | id | Name | Address | Subject | +------+---------+------------+------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Jaipur | Literature | | 110 | Rahul | Chandigarh | History | | 125 | Raman | Shimla | Computers | +------+---------+------------+------------+ 4 rows in set (0.00 sec)
ชุดผลลัพธ์ข้างต้นแสดงว่าที่อยู่ของบันทึกที่มี id =125 อัปเดตในตาราง