Oracle PLSQL Procedure ต่างกับ Function ยังไง
บทความเกี่ยวกับ : Oracle PLSQL Procedure ต่างกับ Function ยังไง
เพื่อนๆ หลายๆคนคงจะเคยเขียน Program บน Oracle ด้วย PLSQL กันมาบ้าง
PLSQL ต่างจาก SQL commmand ตรงที่สามารถใน่ Logic ต่างๆเข้าไปได้มากกว่าไม่ว่าจะเป็น
การเช็คเงื่อนไข การ วน Loop เป็นต้น แต่หลายคนอาจสงสัยว่า Procedure ต่างจาก Function ยังไง ผมเองตอนหัดเขียนใหม่ๆ ก็ใช้แต่ Function เพราะคุ้นเคยกับการเขียน Java ที่เป็น method มี input parameter และก็มี return value แต่พอเริ่มเขียนเยอะขึ้นจึงได้เปลี่ยนมาใช้ Procedure แทน
ผมจะบอกข้อแตกต่างที่เห็นได้ชัดเจนที่สุดและเป็นประโชยน์ที่สุดให้ฟังเพียงข้อเดียวนะครับคือ
** Parameter ของ procedure มีได้ทั้ง In และ Out นั่นหมายความว่าคุณสามารถส่งค่าเข้า procedure ได้หลายค่าและก็ return ค่ากลับออกมาได้หลายค่าเช่นกัน สุดยอดดด แต่ ในส่วนของ function นั้นสามารถรับ parameter ได้หลายค่าก็จริงแต่ return ค่ากลับออกมาได้เพียงค่าเดียวเหมือนที่เราคุ้นเคยกัน
เพื่อนๆ หลายๆคนคงจะเคยเขียน Program บน Oracle ด้วย PLSQL กันมาบ้าง
PLSQL ต่างจาก SQL commmand ตรงที่สามารถใน่ Logic ต่างๆเข้าไปได้มากกว่าไม่ว่าจะเป็น
การเช็คเงื่อนไข การ วน Loop เป็นต้น แต่หลายคนอาจสงสัยว่า Procedure ต่างจาก Function ยังไง ผมเองตอนหัดเขียนใหม่ๆ ก็ใช้แต่ Function เพราะคุ้นเคยกับการเขียน Java ที่เป็น method มี input parameter และก็มี return value แต่พอเริ่มเขียนเยอะขึ้นจึงได้เปลี่ยนมาใช้ Procedure แทน
ผมจะบอกข้อแตกต่างที่เห็นได้ชัดเจนที่สุดและเป็นประโชยน์ที่สุดให้ฟังเพียงข้อเดียวนะครับคือ
** Parameter ของ procedure มีได้ทั้ง In และ Out นั่นหมายความว่าคุณสามารถส่งค่าเข้า procedure ได้หลายค่าและก็ return ค่ากลับออกมาได้หลายค่าเช่นกัน สุดยอดดด แต่ ในส่วนของ function นั้นสามารถรับ parameter ได้หลายค่าก็จริงแต่ return ค่ากลับออกมาได้เพียงค่าเดียวเหมือนที่เราคุ้นเคยกัน