Differenza fondamentale: le funzioni e le procedure sono entrambi sottoprogrammi di Oracle. Il principale punto di differenza che si trova tra loro è che le funzioni restituiscono sempre un valore, ma le procedure possono o no.
Confronto tra funzione e procedura:
Funzione | Procedura | |
Ritorno di valore | Restituisce sempre un valore. | Può o non può restituire un valore. |
Compiti svolti | La funzione esegue un compito specifico. | Una procedura può eseguire più attività. |
Chiamata da istruzioni SQL | Tale chiamata è possibile per le funzioni. | Tale chiamata non è fattibile per le procedure. |
Uso | Le funzioni sono generalmente utilizzate per eseguire calcoli. | Le procedure sono utilizzate per eseguire la logica aziendale. |
Esecuzione indipendente | Una funzione non viene eseguita in modo indipendente. Deve essere una parte della dichiarazione eseguibile. | Una procedura stessa rappresenta un'istruzione eseguibile, quindi può essere eseguita indipendentemente. |