Эта строка не Oracle:
select datediff(year,getdate(),hire_date),employees.salary
into experience, salaire
from employees
where employee_id = 115;
Я могу предположить, что вы хотите что-то вроде этого:
select floor( months_between( sysdate, hiredate ) / 12 ),
employees.salary
into experience, salaire
from employees
where employee_id = 115;
Это не совсем те же логики c, что у тебя есть. Но, вероятно, это лучшее определение experience
, учитывая, что на самом деле делает datediff()
.