Procedury a funkcje programowania
Procedury i funkcje programowania pozwalają programistom grupować instrukcje razem w jednym bloku i można je wywoływać z różnych miejsc w programie. Kod staje się łatwiejszy do zrozumienia i bardziej zwarty. Wykonując modyfikacje w jednym miejscu, wpłynie to na cały kod. Za pomocą funkcji i procedur; długi i liniowy kod można podzielić na niezależne sekcje. Zapewniają większą elastyczność w kodowaniu różnych języków programowania i baz danych.
Jakie są funkcje?
Funkcje mogą akceptować parametry, które są również znane jako argumenty. Wykonują zadania zgodnie z tymi argumentami lub parametrami i zwracają wartości danego typu. Możemy to lepiej wyjaśnić za pomocą przykładu: funkcja przyjmuje ciąg jako parametr i zwraca pierwszy wpis lub rekord z bazy danych. Bierze pod uwagę zawartość określonego pola rozpoczynającego się od takich znaków.
Składnia funkcji jest następująca:
UTWÓRZ LUB WYMIEŃ FUNKCJĘ my_func
(p_name IN VARCHAR2: = „Jack”) zwraca varchar2 jak początek… koniec
Jakie są procedury?
Procedury mogą akceptować parametry lub argumenty i wykonują zadania zgodnie z tymi parametrami. Jeśli procedura przyjmuje ciąg jako parametr i podaje listę z rekordami w bazie danych, dla których zawartość określonego pola zaczyna się od takich znaków.
Składnia procedur jest następująca:
PROCEDURA UTWORZENIA LUB WYMIANY my_proc
(p_name IN VARCHAR2: = „Jack”) jak początek… koniec
Głównie istnieją dwa sposoby przekazywania parametru w funkcjach i procedurach; według wartości lub przez odniesienie. Jeśli parametr zostanie przekazany przez wartość; modyfikacja ma wpływ na funkcję lub procedurę bez wpływu na jej faktyczną wartość.
Z drugiej strony, jeśli parametry są przekazywane przez odwołania; rzeczywista wartość tego parametru zostanie zmieniona niezależnie od tego, gdzie zostanie wywołany w kodzie zgodnie z instrukcjami.
Różnica między procedurami i funkcjami • Po przekazaniu parametru do procedury; nie zwraca żadnej wartości, podczas gdy funkcja zawsze zwraca wartość. • Jedną z głównych różnic między nimi jest to, że procedury nie są stosowane w bazach danych, podczas gdy funkcje odgrywają ważną rolę w zwracaniu wartości z bazy danych. • Procedury mogą zwracać wiele wartości, a funkcje mogą zwracać ograniczone wartości. • Operacje DML mogą być używane w procedurach przechowywanych; nie są one jednak możliwe w funkcjach. • Funkcje mogą zwracać tylko jedną wartość i jest to obowiązkowe, podczas gdy procedury mogą zwracać n lub zero wartości. • W funkcjach nie można wykonać obsługi błędów, ale można to zrobić w procedurach przechowywanych. • Parametry wejściowe i wyjściowe mogą być przekazywane w procedurach, natomiast w przypadku funkcji; można przekazać tylko parametry wejściowe. • Funkcje można wywoływać z procedur, podczas gdy nie można wywoływać procedury z funkcji. • Zarządzanie transakcjami można rozpatrywać w procedurach i nie można tego rozważać w przypadku funkcji. |