Oracle
 sql >> база данни >  >> RDS >> Oracle

Как да напиша PL/SQL процедура с комбинирани x входни параметри и вход/изход на x параметри

За мен изглежда така, сякаш

  • трябва да „конвертирате“ процедури които изчисляват всяка част от STUDENT_ID във функции
    • Защо? Тъй като - както е сега - процедурите трябва да имат OUT параметър, за да могат да върнат това, което са изчислили. И това не е нищо друго освен функция
  • предавайте информация на всеки от тях
  • получи резултата
  • свързване резултат парчета в крайния STUDENT_ID стойности

Нещо подобно:

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;  

И накрая, тъй като всички тези функции и процедури се справят с един и същ проблем, би било хубаво да ги поставите всички в пакет .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-01653:не може да се разшири таблицата в пространството за таблици ORA-06512

  2. Отворете модален диалогов прозорец чрез JavaScript Oracle APEX

  3. SQL:как да разбера дали съдържанието на колона varchar е числово?

  4. SELECT SUM връща ред, когато няма записи

  5. Как да извика функция Oracle в Python?