Diferența principală: Funcțiile și procedurile sunt ambele subprograme ale Oracle. Principalul punct de diferență care se află între ele este acela că funcțiile întoarce întotdeauna o valoare, dar procedurile pot sau nu pot.
Comparație între funcție și procedură:
Funcţie | Procedură | |
Returnarea valorii | Întoarce întotdeauna o valoare. | Poate sau nu poate returna o valoare. |
Sarcini efectuate | Funcția îndeplinește o sarcină specifică. | O procedură poate efectua mai multe sarcini. |
Apelarea din instrucțiunile SQL | Această chemare este posibilă pentru funcții. | Această chemare nu este posibilă pentru proceduri. |
Utilizare | Funcțiile sunt de obicei utilizate pentru efectuarea calculelor. | Procedurile sunt folosite pentru a executa logica de afaceri. |
Execuția independentă | O funcție nu se execută independent. Trebuie să facă parte din declarația executabilă. | O procedură în sine reprezintă o declarație executabilă, astfel încât aceasta poate funcționa independent. |