Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Cara menulis prosedur PL/SQL dengan parameter input x dan input/output dari parameter x digabungkan

Bagi saya, sepertinya

  • Anda harus "mengubah" prosedur yang menghitung setiap bagian dari STUDENT_ID menjadi fungsi
    • Kenapa? Karena - seperti sekarang - prosedur harus memiliki parameter OUT sehingga mereka dapat mengembalikan apa yang mereka hitung. Dan itu tidak lain hanyalah sebuah fungsi
  • menyampaikan informasi kepada mereka masing-masing
  • dapatkan hasilnya
  • menggabungkan potongan hasil ke dalam STUDENT_ID terakhir nilai

Sesuatu seperti ini:

function f_name (par_name in varchar2) return varchar2 is
  retval varchar2(20);
begin
  retval := whatever code you have to find it
  return retval;
end;

function f_surname (par_surname in varchar2) return varchar2 is
  retval varchar2(20);
begin
  retval := whatever code you have to find it
  return retval;
end;

etc.

procedure student_id (par_surname in varchar2, par_name in varchar2, ...)
is
  l_student_id varchar2(30);
begin
  l_student_id := f_name   (par_name)    ||'-'||
                  f_surname(par_surname) ||'-'||
                  f_gender (par_gender)  ||'-'||
                  ...
                  f_state  (par_state);
                  
  dbms_output.put_line('Student_ID is: ' || l_student_id);
end;  

Terakhir, karena semua fungsi dan prosedur tersebut menangani masalah yang sama, alangkah baiknya jika semuanya dimasukkan ke dalam paket .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORACLE SQL ORA-22814 atribut atau nilai elemen lebih besar dari yang ditentukan dalam tipe

  2. Bagaimana saya bisa mencegah pengecualian ini? java.sql.SQLException:Gagal mengonversi ke representasi internal:

  3. Cara Membuat File login.sql untuk SQLcl

  4. Perbarui seluruh tabel dengan nomor urut di oracle

  5. Kesalahan sintaks dalam pernyataan SQL "DENGAN" kata kunci melempar pengecualian