Привет, я не уверен, что я делаю неправильно. Я пытаюсь отобразить/вернуть все записи из процедуры, которую я создал. Структура таблицы составляет DD_PROJECT
со следующим IDPROJ, PROJNAME,PROJSTART,PROJEND,PROJGOAL,PROJ COORD
. Мне нужна помощь в том, чтобы вывести эту информацию на основе указанного идентификатора проекта. В любом случае, вот мой код до сих пор:вызов данных из процедуры
create or replace procedure DDPROJ_SP(p_proj_id DD_PROJECT.IDPROJ%type, p_proj_rec out DD_PROJECT%rowtype)
is
begin
select *
into p_proj_rec
from DD_PROJECT
where DD_PROJECT.IDPROJ=p_proj_id;
exception
when others then
p_proj_rec.idproj:=-1;
end;
теперь я пытаюсь вызвать процедуру с этим кодом:
set serveroutput on
DECLARE
p_proj_id :=& proj_id;
BEGIN
DDROJ_SP(p_proj_id);
DBMS_OUTPUT.PUT_LINE(
'Project ID: ' || p_proj_rec.projid
||' Project Name: ' || p_proj_rec.projname
||' Project Start Date: ' || p_proj_rec.projstartdate
||' Project End Date: ' || p_proj_rec.projenddate
||' Project Fund Goal: ' || p_proj_rec.projfundgoal
||' Project Coor: ' || p_proj_rec.projcoord
);
end;
Это ошибка: Сообщение об ошибке - ORA-06550: строка 2, столбец 12: PLS-00103: встречается символ «=»
В этот момент я хочу, чтобы пользователь вводил идентификатор проекта и вытаскивал информацию в моем выходном коде выше.
что облегчение моей ошибки компиляции, но теперь я получаю отчет Error - ORA-06550: строка 4, колонка 3: PLS-00201: идентификатор 'DDROJ_SP' должен быть объявлен ORA-06550: строка 4, колонка 3 : PL/SQL: Заявление игнорируется ОР-06550: строка 5, колонка 42: PLS-00201: идентификатор 'P_PROJ_REC.PROJID' должен быть объявлен ОР-06550: строка 5, столбец 3: PL/SQL: Заявление игнорируется 06550. 00000 - "строка% s, столбец% s: \ n% s" * Причина: Обычно ошибка компиляции PL/SQL. * Действие: Я объявил это в своей процедуре? Я не знаю, что я делаю неправильно в своем обращении. – Kenny
Отредактировано. Я пропустил запись p_proj_rec – pablomatico