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

สารบัญ:

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

วีดีโอ: ความแตกต่างระหว่างขั้นตอนการจัดเก็บและฟังก์ชัน

วีดีโอ: ความแตกต่างระหว่างขั้นตอนการจัดเก็บและฟังก์ชัน
วีดีโอ: แรงโน้มถ่วงระหว่างมวล (ตัวอย่างการคำนวณ): ดาราศาสตร์และอวกาศ Ep 2 (วิทย์ ครูทอป) 2024, พฤศจิกายน
Anonim

ขั้นตอนการจัดเก็บเทียบกับฟังก์ชั่น

ขั้นตอนและฟังก์ชันที่เก็บไว้เป็นบล็อกการเขียนโปรแกรมสองประเภท ทั้งสองคนต้องมีชื่อเรียก ชื่อการโทรเหล่านี้ใช้เพื่อเรียกพวกเขาภายในบล็อกการเขียนโปรแกรมอื่น เช่น ฟังก์ชันของโพรซีเดอร์และแพ็คเกจ หรือการสืบค้น SQL ออบเจ็กต์ทั้งสองประเภทนี้ยอมรับพารามิเตอร์และทำงานเบื้องหลังอ็อบเจ็กต์เหล่านั้น นี่คือไวยากรณ์ (ใน ORACLE) เพื่อสร้างกระบวนงานที่เก็บไว้

สร้างหรือแทนที่ชื่อขั้นตอน (พารามิเตอร์)

เป็น

เริ่ม

statements;

ยกเว้น

exception_handling

จบ;

และนี่คือรูปแบบการสร้างฟังก์ชัน (ใน ORACLE)

สร้างหรือแทนที่ฟังก์ชัน function_name (พารามิเตอร์)

return return_datatype

เป็น

เริ่ม

statements;

ผลตอบแทน return_value/ตัวแปร;

ยกเว้น;

exception_handling;

จบ;

ขั้นตอนการจัดเก็บ

ดังที่กล่าวไว้ข้างต้นว่าขั้นตอนการจัดเก็บมีชื่อว่าบล็อกการเขียนโปรแกรม พวกเขายอมรับพารามิเตอร์เป็นการป้อนข้อมูลของผู้ใช้และดำเนินการตามตรรกะที่อยู่เบื้องหลังขั้นตอนและให้ผลลัพธ์ (หรือดำเนินการเฉพาะ) พารามิเตอร์เหล่านี้อาจเป็นประเภท IN, OUT และ INOUT การประกาศตัวแปร การกำหนดตัวแปร คำสั่งควบคุม ลูป การสืบค้น SQL และฟังก์ชัน/ขั้นตอน/การเรียกแพ็กเกจอื่นๆ สามารถอยู่ภายในเนื้อหาของโพรซีเดอร์ได้

ฟังก์ชั่น

Functions ยังถูกตั้งชื่อว่า programming blocks ซึ่งจะต้องคืนค่าโดยใช้คำสั่ง RETURN และก่อนที่จะส่งกลับค่า ตัวของมันจะดำเนินการบางอย่างเช่นกัน (ตามตรรกะที่กำหนด) ฟังก์ชันยังยอมรับพารามิเตอร์เพื่อเรียกใช้ สามารถเรียกใช้ฟังก์ชันภายในแบบสอบถามได้ เมื่อมีการเรียกใช้ฟังก์ชันภายในคิวรี SELECT ฟังก์ชันดังกล่าวจะนำไปใช้กับแต่ละแถวของชุดผลลัพธ์ของคิวรี SELECT ฟังก์ชัน ORACLE มีหลายประเภท พวกเขาคือ

ฟังก์ชันแถวเดียว (ส่งกลับผลลัพธ์เดียวสำหรับการค้นหาแต่ละแถวและทุกแถว)

มีหมวดหมู่ย่อยของฟังก์ชันแถวเดียว

  • ฟังก์ชันตัวเลข (เช่น ABS, SIN, COS)
  • ฟังก์ชันอักขระ (เช่น CONCAT, INITCAP)
  • ฟังก์ชันวันที่และเวลา (เช่น LAST_DAY, NEXT_DAY)
  • ฟังก์ชันการแปลง (เช่น TO_CHAR, TO_DATE)
  • ฟังก์ชั่นการรวบรวม (เช่น: CARDINALITY, SET)
  • ฟังก์ชันรวม (ส่งกลับแถวเดียว ตามกลุ่มของแถว เช่น AVG, SUM, MAX)
  • ฟังก์ชันวิเคราะห์
  • ฟังก์ชั่นอ้างอิงวัตถุ
  • ฟังก์ชั่นโมเดล
  • ฟังก์ชั่นที่กำหนดโดยผู้ใช้

ฟังก์ชั่นและขั้นตอนการจัดเก็บต่างกันอย่างไร

• ทุกฟังก์ชันต้องคืนค่าโดยใช้คำสั่ง RETURN กระบวนงานที่เก็บไว้ไม่คืนค่าโดยใช้คำสั่ง RETURN คำสั่ง RETURN ภายในโพรซีเดอร์จะส่งคืนการควบคุมไปยังโปรแกรมที่เรียก พารามิเตอร์ OUT สามารถใช้เพื่อคืนค่าจากกระบวนงานที่เก็บไว้

• ฟังก์ชันสามารถเรียกใช้ในเคียวรีได้ แต่โพรซีเดอร์ที่เก็บไว้ไม่สามารถใช้ในเคียวรีได้

• ต้องรวมประเภทข้อมูล RETURN เพื่อสร้างฟังก์ชัน แต่จะไม่รวมอยู่ในขั้นตอนการจัดเก็บ DDL