Perbedaannya adalah- Sebuah fungsi harus mengembalikan nilai (dari jenis apa pun) menurut definisi defaultnya, sedangkan dalam kasus prosedur Anda perlu menggunakan parameter seperti OUT atau IN OUT parameter untuk mendapatkan hasil. Anda dapat menggunakan fungsi dalam SQL normal di mana Anda tidak dapat menggunakan prosedur di SQL pernyataan.
Beberapa Perbedaan Fungsi dan Prosedur
-
Sebuah fungsi selalu mengembalikan nilai menggunakan pernyataan kembali sementara prosedur dapat mengembalikan satu atau lebih nilai melalui parameter atau mungkin tidak kembali sama sekali. Meskipun,
OUTparameter masih dapat digunakan dalam fungsi, mereka tidak disarankan juga tidak ada kasus di mana orang mungkin merasa perlu melakukannya. MenggunakanOUTparameter membatasi fungsi untuk digunakan dalam Pernyataan SQL. -
Fungsi dapat digunakan dalam pernyataan SQL biasa seperti
SELECT,INSERT,UPDATE,DELETE,MERGE, sedangkan prosedur tidak bisa. -
Fungsi biasanya digunakan untuk perhitungan sedangkan prosedur biasanya digunakan untuk mengeksekusi logika bisnis.
-
Oracle menyediakan ketentuan untuk membuat "Indeks Berbasis Fungsi" untuk meningkatkan kinerja pernyataan SQL berikutnya. Ini berlaku saat menjalankan fungsi pada kolom terindeks di mana klausa kueri.
Informasi Lebih Lanjut tentang Fungsi Vs. Prosedur di sini dan di sini.