2014-11-09 4 views
-1

Хорошо. Я скопировал этот код из класса, но в то время я, должно быть, был уже спящим, потому что на самом деле он не работает.SQLPLUS Как исправить эту процедуру, чтобы она работала правильно?

Create or replace procedure display_row is 
    (p_itemid IN item.itemid%TYPE) is 
    v_itemid Number; 
    v_itemdesc varchar2(30); 
    v_category varchar2(30); 
Begin 
    Select * 
    Into v_itemid, v_itemdesc, v_category 
    From item 
    Where itemid = p_itemid; 
    Dbms_output.put_line(v_itemid || ' ' || v_itemdesc || ' ' || v_category); 
End; 

Как исправить эту процедуру, чтобы она действительно работала?

Вот ошибки пользователя:

LINE POSITION TEXT 

 2   6 PLS-00103: Encountered the symbol "(" when expecting one of 
        the following: 

        begin function package pragma procedure subtype type use 
        <an identifier> <a double-quoted delimited-identifier> fo 
        rm 
        current cursor external language 

    2   37 PLS-00103: Encountered the symbol "IS" when expecting one of 
        the following: 

        return 

ответ

1

Удалить оператор is из первого предложения

Create or replace procedure display_row is 
             <--Here  

Ваша процедура должна выглядеть

Create or replace procedure display_row 
    (p_itemid IN item.itemid%TYPE) is 
    v_itemid Number; 
    v_itemdesc varchar2(30); 
    v_idemdesc varchar2(30); 
Begin 
    Select * 
    Into v_itemid, v_itemdesc, v_category 
    From item 
    Where itemid = p_itemid; 
    Dbms_output.put_line(v_itemid || ' ' || v_itemdesc || ' ' || v_category); 
End; 
+0

Отлично, спасибо вам большое! Я чувствую себя глупо за то, что этого не хватает, но теперь, когда я вижу это, все становится намного лучше. – user2022185

Смежные вопросы