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

สร้างกระบวนงานที่เก็บไว้ด้วยตัวคั่นใน MySQL


คุณสามารถสร้างกระบวนงานที่เก็บไว้ได้โดยใช้คำสั่งสร้างขั้นตอน ไวยากรณ์มีดังนี้ −

delimiter //CREATE PROCEDURE yourStoreProcedureName()BEGIN ประกาศตัวแปรที่นี่ คำสั่งเคียวรีEND //delimiter //

ใช้ไวยากรณ์ข้างต้นเพื่อสร้างกระบวนงานที่เก็บไว้ แบบสอบถามมีดังนี้ −

mysql> ใช้การทดสอบ;ฐานข้อมูลเปลี่ยนmysql> ตัวคั่น //mysql> สร้างโพรซีเดอร์ Sp_callTableStoredProcTable() −> เริ่ม −> เลือก *จาก StoredProcTable; −> end //Query OK, 0 แถวได้รับผลกระทบ (0.54 วินาที)

ตอนนี้คุณต้องเปลี่ยนตัวคั่นด้วย; เพื่อเรียกกระบวนงานที่เก็บไว้ -

mysql> ตัวคั่น;

คุณสามารถเรียกกระบวนงานที่เก็บไว้โดยใช้คำสั่ง CALL ไวยากรณ์มีดังนี้ −

CALL yourStoredProcedureName();

กระบวนงานที่เก็บไว้ข้างต้นสามารถเรียกได้โดยใช้คำสั่ง CALL ดังแสดงในแบบสอบถามด้านล่าง -

mysql> โทร Sp_callTableStoredProcTable();

ต่อไปนี้เป็นผลลัพธ์ -

<ก่อนหน้า>+-----------+------+| ชื่อจริง | อายุ |+-----------+------+| จอห์น | 23 || บ๊อบ | 24 || เดวิด | 20 |+-----------+------+3 แถวในชุด (0.03 วินาที) แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.06 วินาที)

ด้านบน เราได้ใช้ตาราง 'StoredProcTable' และตารางนี้มีสามระเบียน แสดงระเบียนทั้งหมดโดยใช้ขั้นตอนการจัดเก็บ

คุณสามารถตรวจสอบจำนวนระเบียนในตารางโดยใช้ขั้นตอนการจัดเก็บ -

mysql> ตัวคั่น //mysql> สร้างโพรซีเดอร์ CountingRecords() −> start −> เลือก count(*) เป็น AllRecords จาก StoredProcTable; −> end //Query OK, 0 แถวได้รับผลกระทบ (0.19 วินาที)mysql> delimiter;

เรียกกระบวนงานที่เก็บไว้โดยใช้คำสั่ง CALL แบบสอบถามมีดังนี้ −

mysql> โทร CountingRecords();

ผลลัพธ์ต่อไปนี้แสดงจำนวนระเบียน −

<ก่อนหน้า>+-----------+| AllRecords |+-----------+| 3 |+------------+1 แถวในชุด (0.31 วินาที) ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.33 วินาที)