Как использовать sql в процедуре - PullRequest
0 голосов
/ 14 декабря 2018
CREATE TABLE emp_table_001
(
    emp_id NUMBER(10) PRIMARY KEY,
    emp_name VARCHAR2(50) 
);

INSERT INTO emp_table_001 VALUES(1,'addeesh');
INSERT INTO emp_table_001 VALUES(2,'arunkumar');
INSERT INTO emp_table_001 VALUES(3,'ashok');
INSERT INTO emp_table_001 VALUES(4,'bharath');
INSERT INTO emp_table_001 VALUES(5,'durairaj');

select * from emp_table_001

CREATE OR REPLACE PROCEDURE proc_1(employee_id IN NUMBER)
IS
    employee_name VARCHAR2(50);
BEGIN
SELECT emp_name INTO employee_name FROM emp_table_001
WHERE emp_id = employee_id;

DBMS_OUTPUT_LINE('NAME:'||emp_name);
END;

У меня проблемы с приведенным выше кодом.Это сообщение об ошибке:

Ошибки: PROCEDURE PROC_1
Строка / столбец: 8/1 PL / SQL: оператор игнорируется
Строка / столбец: 8/27 PLS-00201: идентификатор 'EMP_NAME'должен быть объявлен

1 Ответ

0 голосов
/ 14 декабря 2018

Процедура должна выглядеть следующим образом:

CREATE OR REPLACE PROCEDURE proc_1 (employee_id IN NUMBER)
IS
   employee_name   emp_table_001.emp_name%TYPE;
BEGIN
   SELECT emp_name
     INTO employee_name
     FROM emp_table_001
    WHERE emp_id = employee_id;

   DBMS_OUTPUT.PUT_LINE ('NAME:' || employee_name);   --> this was wrong
END;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...