"Я не понял объяснение функции get_pat_fix."
Просмотрите функцию в IDE, например, TOAD или SQL Developer, или опишите ее в SQL * Plus следующим образом:
SQL> desc validate_salary
FUNCTION validate_salary RETURNS VARCHAR2
Argument Name Type In/Out Default?
------------------------------ ----------------------- ------ --------
P_CURRENT_SAL NUMBER IN
P_RAISE_PCT NUMBER IN
P_JOB VARCHAR2 IN
P_HIREDATE DATE IN
P_DEPTNO NUMBER IN DEFAULT
SQL>
Показывает число и тип данных параметров. Мы должны передать значения для каждого параметра, который не имеет значения по умолчанию, и мы должны передать переменную для любого параметра OUT или IN OUT. Переданные значения должны соответствовать типу данных параметра.
Параметры могут быть переданы по позиции ...
SQL> select validate_salary (4000, 10, 'MGR', sysdate-720)
2 from dual
3 /
VALIDATE_SALARY(4000,10,'MGR',SYSDATE-720)
--------------------------------------------------------------
okay
SQL>
... или по именному обозначению ...
SQL> select validate_salary (p_current_sal=> e.sal
2 , p_hiredate=> e.hiredate
3 , p_deptno => e.deptno
4 , p_job => e.job
5 , p_raise_pct=> 10 )
6 from emp e
7 /
VALIDATE_SALARY(P_CURRENT_SAL=>E.SAL,P_HIREDATE=>E.HIREDATE,P_DEPTNO=>E.DEPTNO,P
--------------------------------------------------------------------------------
okay
okay
okay
...
В любом случае параметры должны совпадать:
SQL> select validate_salary (4000, 10, 'MGR')
2 from dual
3 /
select validate_salary (4000, 10, 'MGR')
*
ERROR at line 1:
ORA-06553: PLS-306: wrong number or types of arguments in call to
'VALIDATE_SALARY'
SQL> select validate_salary (4000, 'MGR', sysdate-720, 40)
2 from dual
3 /
select validate_salary (4000, 'MGR', sysdate-720, 40)
*
ERROR at line 1:
ORA-06553: PLS-306: wrong number or types of arguments in call to
'VALIDATE_SALARY'
SQL>
Конечно, я упустил самый очевидный ответ: обратитесь к документации вашего приложения, в которой будет подробное описание функции GET_PAT_FIX (), включая ее подпись. :-D Извините, подумал, что я мог бы оставаться невозмутимым, пока я это печатал.
Увы, в реальном мире слишком многим из нас приходится бороться без достойной документации для наших приложений. Таким образом, мы должны опросить схему базы данных. Я не думаю, что для этого есть какие-либо инструменты SAS (, которые Google подбрасывает , похоже, просто браузеры данных). Так что это означает, что вам понадобится инструмент базы данных. Я собираюсь предложить SQL Developer для Oracle не потому, что он лучший (это дело вкуса), а потому, что он бесплатный и работает. Найдите это здесь .