ความแตกต่างระหว่างขั้นตอนและฟังก์ชั่นในการเขียนโปรแกรม

Anonim

ขั้นตอนและฟังก์ชันในการเขียนโปรแกรม

ขั้นตอนและฟังก์ชันในการเขียนโปรแกรมช่วยให้โปรแกรมเมอร์สามารถจัดกลุ่มคำสั่งร่วมกันในกลุ่มเดียว และสามารถเรียกได้จากที่ต่างๆภายในโปรแกรม รหัสจะง่ายขึ้นและกระชับมากขึ้น การดำเนินการแก้ไขในที่เดียวรหัสทั้งหมดจะได้รับผลกระทบ ด้วยความช่วยเหลือของฟังก์ชันและขั้นตอน รหัสเชิงเส้นและยาวสามารถแบ่งออกเป็นส่วนที่เป็นอิสระ พวกเขาให้ความยืดหยุ่นมากขึ้นในการเขียนโปรแกรมภาษาต่างๆและฐานข้อมูล

หน้าที่คืออะไร?

ฟังก์ชั่นมีความสามารถในการรับพารามิเตอร์ซึ่งเรียกอีกอย่างว่าอาร์กิวเมนต์ พวกเขาดำเนินงานตามอาร์กิวเมนต์หรือพารามิเตอร์เหล่านี้และค่าที่ส่งกลับของชนิดที่กำหนด เราสามารถอธิบายได้ดียิ่งขึ้นด้วยความช่วยเหลือของตัวอย่าง: ฟังก์ชันรับสตริงเป็นพารามิเตอร์และส่งคืนรายการหรือบันทึกจากฐานข้อมูลครั้งแรก โดยคำนึงถึงเนื้อหาสำหรับฟิลด์เฉพาะที่ขึ้นต้นด้วยตัวอักษรดังกล่าว

ไวยากรณ์ของฟังก์ชันมีดังต่อไปนี้

สร้างหรือเปลี่ยนฟังก์ชัน my_func

(p_name IN VARCHAR2: = 'Jack') return varchar2 เป็น begin … end

ขั้นตอนคืออะไร ?

ขั้นตอนสามารถยอมรับพารามิเตอร์หรืออาร์กิวเมนต์และดำเนินงานตามพารามิเตอร์เหล่านี้ ถ้าขั้นตอนยอมรับสตริงเป็นพารามิเตอร์และให้รายการที่มีข้อมูลในฐานข้อมูลซึ่งเนื้อหาของฟิลด์ใดฟิลด์หนึ่งเริ่มต้นด้วยอักขระดังกล่าว

ไวยากรณ์ของกระบวนงานมีดังนี้:

สร้างหรือเปลี่ยนกระบวนการ my_proc

(p_name IN VARCHAR2: = 'Jack') เป็นจุดเริ่มต้น … end

ส่วนใหญ่มีสองวิธีที่พารามิเตอร์ถูกส่งผ่านในฟังก์ชันและขั้นตอน ตามมูลค่าหรือโดยการอ้างอิง ถ้าพารามิเตอร์ถูกส่งผ่านโดยค่า; การปรับเปลี่ยนจะได้รับผลกระทบภายในฟังก์ชันหรือขั้นตอนโดยไม่มีผลกระทบต่อมูลค่าที่แท้จริงของมัน

ในทางกลับกันถ้าพารามิเตอร์ถูกส่งโดยการอ้างอิง ค่าที่แท้จริงของพารามิเตอร์นี้จะมีการเปลี่ยนแปลงที่ใดก็ตามที่เรียกว่าภายในโค้ดตามคำแนะนำ

ความแตกต่างระหว่างขั้นตอนและฟังก์ชั่น

•เมื่อผ่านพารามิเตอร์ไป มันไม่ได้ส่งกลับค่าใด ๆ ในขณะที่ฟังก์ชั่นเสมอส่งกลับค่า

•หนึ่งในความแตกต่างที่สำคัญทั้งสองอย่างคือขั้นตอนไม่ได้ใช้ในฐานข้อมูลขณะที่ฟังก์ชันมีบทบาทสำคัญในการส่งคืนค่าจากฐานข้อมูล

•กระบวนงานมีความสามารถในการส่งกลับค่าหลายค่าและฟังก์ชันสามารถคืนค่าที่ จำกัด ได้

•สามารถใช้งาน DML ได้ในขั้นตอนการจัดเก็บ อย่างไรก็ตามพวกเขาไม่สามารถทำงานได้

•ฟังก์ชันสามารถส่งคืนค่าได้เพียงค่าเดียวและเป็นข้อบังคับในขณะที่ขั้นตอนสามารถส่งกลับค่า n หรือศูนย์ได้

•ในฟังก์ชั่นการจัดการข้อผิดพลาดไม่สามารถทำได้ในขณะที่สามารถทำได้ในขั้นตอนการจัดเก็บ

•พารามิเตอร์อินพุตและเอาต์พุตสามารถส่งผ่านได้ในขณะที่ในกรณีของฟังก์ชัน สามารถป้อนพารามิเตอร์เฉพาะได้

•สามารถเรียกฟังก์ชันจากขั้นตอนต่างๆได้เนื่องจากไม่สามารถเรียกใช้ขั้นตอนจากฟังก์ชันได้

•การจัดการธุรกรรมสามารถได้รับการพิจารณาในขั้นตอนและไม่สามารถพิจารณาได้ในกรณีที่มีการทำงาน