Eljárások vs függvények a programozásban
Eljárások és funkciók a programozásban, lehetővé teszik a programozók számára, hogy az utasításokat egyetlen blokkba csoportosítsák, és a program különböző helyeiről lehívhatók. A kód könnyebben érthetővé és kompaktabbá válik. Ha a módosításokat egyetlen helyen hajtja végre, akkor az egész kódot érinti. Funkciók és eljárások segítségével; egy lineáris és hosszú kód független szakaszokra osztható. Nagyobb rugalmasságot biztosítanak a különféle programozási nyelvek és adatbázisok kódolásához.
Mik a funkciók?
A függvények képesek elfogadni azokat a paramétereket, amelyek argumentumként is ismertek. Ezeket az argumentumokat vagy paramétereket, valamint az adott típusú visszatérési értékeket követve hajtják végre a feladatokat. Jobban megmagyarázhatjuk egy példa segítségével: A függvény elfogadja a karakterláncot paraméterként, és az első bejegyzést vagy rekordot adja vissza egy adatbázisból. Figyelembe veszi egy adott mező tartalmát, amely ilyen karakterekkel kezdődik.
A függvény szintaxisa a következő:
A my_func funkció létrehozása vagy cseréje
(p_name IN VARCHAR2: = 'Jack') adja vissza a varchar2-t kezdetnek … végnek
Mik azok az eljárások?
Az eljárások elfogadják a paramétereket vagy argumentumokat, és ezeknek a paramétereknek megfelelően végeznek feladatokat. Ha egy eljárás elfogadja a karakterláncot paraméterként, és listát ad az adatbázisban szereplő rekordokról, amelyekhez egy adott mező tartalma ilyen karakterekkel kezdődik.
Az eljárások szintaxisa a következő:
ELJÁRÁS LÉTREHOZÁSA vagy CSERÉJE my_proc
(p_name IN VARCHAR2: = 'Jack'), ahogy kezdődik … vége
Főleg kétféle módon adható át egy paraméter a függvényekben és eljárásokban; érték vagy hivatkozás alapján. Ha a paramétert egy érték adja át; a módosítást a függvény vagy eljárás befolyásolja, anélkül, hogy befolyásolná annak tényleges értékét.
Másrészt, ha a paramétereket referenciák adják át; ennek a paraméternek a tényleges értéke megváltozik, bárhová is hívják a kódban az utasításoknak megfelelően.
• Amikor a paraméter átkerül az eljárásba; nem ad vissza értéket, míg egy függvény mindig ad vissza értéket. • Mindkettő egyik fő különbsége, hogy az eljárásokat nem használják az adatbázisokban, míg a függvények fontos szerepet játszanak az értékek adatbázisból történő visszaadásában. • Az eljárások képesek több érték, a függvények pedig korlátozott értékek visszaadására. • A DML műveletek tárolt eljárásokban használhatók; funkciókban azonban nem lehetségesek. • A függvények csak egy értéket adhatnak vissza, és ez kötelező, míg az eljárások n vagy nulla értéket adhatnak vissza. • A funkciókban a hibakezelés nem végezhető el, míg a tárolt eljárásokban. • A bemeneti és kimeneti paraméterek átadhatók eljárásokban, míg függvények esetén; csak a bemeneti paraméterek adhatók át. • A függvények meghívhatók az eljárásokból, míg egy funkcióból nem lehet eljárást hívni. • A tranzakciókezelés figyelembe vehető az eljárások során, és nem vehető figyelembe a funkciók esetében. |