create table employee
(
employedID number,
employeeName varchar2(30),
deptid number,
salary number
);
Create table department
(
deptid number,
deptname varchar2(30)
);
CREATE OR REPLACE PROCEDURE insertemp
(
PemployedID IN number,
PemployeeName IN varchar,
Pdepid IN number,
Psalary IN number
)
IS
BEGIN
IF Pdepid NOT IN (SELECT * from department.deptid) THEN
INSERT INTO employee VALUES (PemployedID,’PemployeeName’,00,Psalary);
ELSE
INSERT INTO employee VALUES (PemployedID,’PemployeeName’,Pdepid, Psalary);
END IF;
COMMIT;
END;
/
Я пытаюсь создать хранимую процедуру, и я не знаком с синтаксисом SQl оракула. Если Pdepid не существует в табличном отделе, я хотел бы вставить запись в таблицу сотрудников с 00 в качестве Pdepid. Для этого я использую утверждения IF. Я получаю ошибки компиляции для этой процедуры.Ошибки компиляции для Oracle - хранимая процедура
И что это ошибка? (подсказка: запустите 'show errors', чтобы увидеть его) –
В нем говорится, что Sub Query невозможен в этой строке: - –
IF Pdepid NOT IN (SELECT * from department.deptid) THEN –