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

ความแตกต่างระหว่าง Stored Procedure และ Function ใน MySQL คืออะไร

Stored Procedure (กระบวนงานที่จัดเก็บ)

ใน MySQL สามารถเรียกใช้ Stored Procedure ได้ด้วยคำสั่ง CALL โดย Stored Procedure สามารถคืนค่าได้มากกว่าหนึ่งค่า

Stored Procedure จะคืนค่า 0 โดยค่าเริ่มต้น ไม่สามารถใช้ใน SQL Query ได้โดยตรง และทำงานแบบ Pre-compile

Function (ฟังก์ชัน)

Function สามารถเรียกใช้ได้ภายใน Statement โดยตรง สามารถคืนค่าได้ด้วยคำสั่ง RETURN และคืนค่าได้เพียงค่าเดียวเท่านั้น

Function สามารถคืนค่าได้เป็นค่าเดี่ยวหรือตาราง (Table) สามารถใช้ใน SQL Query ได้ และไม่ได้ทำงานแบบ Pre-compile

สรุปความแตกต่างหลัก

  • การเรียกใช้: Procedure ใช้ CALL, Function ใช้ใน Query ได้โดยตรง
  • ค่าที่คืน: Procedure หลายค่า (ผ่าน OUT parameters), Function ค่าเดียว
  • การใช้ใน SQL: Procedure ไม่ได้, Function ได้
  • ประสิทธิภาพ: Procedure ทำงานแบบ Pre-compile, Function ไม่ได้