สำหรับสิ่งนี้ คุณสามารถใช้คำสั่ง UPDATE ร่วมกับส่วนคำสั่ง WHERE ใน PROCEDURE ให้เราสร้างตารางก่อน -
mysql> สร้างตาราง DemoTable -> ( -> Id int, -> FirstName varchar(20), -> LastName varchar(20) -> );Query OK, 0 แถวได้รับผลกระทบ (0.56 วินาที)
แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -
mysql> แทรกลงในค่า DemoTable (101,'David','Brown');Query OK, 1 แถวได้รับผลกระทบ (0.15 วินาที)mysql> แทรกลงในค่า DemoTable (102,'Chris','Brown');Query ตกลง ได้รับผลกระทบ 1 แถว (0.08 วินาที)mysql> แทรกลงในค่า DemoTable (103,'John','Doe');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.07 วินาที)
แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select -
mysql> เลือก *จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+------+-----------+----------+| รหัส | ชื่อจริง | นามสกุล |+------+-----------+----------+| 101 | เดวิด | สีน้ำตาล || 102 | คริส | สีน้ำตาล || 103 | จอห์น | Doe |+------+-----------+----------+3 แถวในชุด (0.00 วินาที)นี่คือแบบสอบถามเพื่อสร้างขั้นตอนการจัดเก็บ-
mysql> ตัวคั่น //mysql> สร้างโพรซีเดอร์ update_sp(fName varchar(20),lName varchar(20)) -> start -> update DemoTable -> set FirstName=fName, -> LastName=lName -> where Id=101; -> end -> //Query OK, 0 แถวได้รับผลกระทบ (0.12 วินาที)mysql> delimiter;
ตอนนี้คุณสามารถเรียกกระบวนงานที่เก็บไว้โดยใช้คำสั่งโทร -
mysql> call update_sp('Adam','Smith');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว คำเตือน 2 ครั้ง (0.08 วินาที)
ให้เราตรวจสอบบันทึกตารางอีกครั้ง -
mysql> เลือก *จาก DemoTable;
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
<ก่อนหน้า>+------+-----------+----------+| รหัส | ชื่อจริง | นามสกุล |+------+-----------+----------+| 101 | อดัม | สมิธ || 102 | คริส | สีน้ำตาล || 103 | จอห์น | Doe |+------+-----------+----------+3 แถวในชุด (0.00 วินาที)