2014-09-25 4 views
1

Привет, я трачу много времени на поиск хранимых процедур в Oracle 11g. Если кто-то может поделиться ответом, который будет настолько полезен.Как выполнить хранимую процедуру в Oracle 11g

С уважением, Праная.

+0

Привет @pranay, добро пожаловать в stackoverflow. У нас есть аналогичный вопрос, который я бы рекомендовал вам посмотреть здесь: http://stackoverflow.com/questions/13860935/execute-a-stored-procedure-in-oracle. –

ответ

1

Это не работает, если нажать клавишу F5, но он работает, если я выделяю заявление Execute и право нажмите и нажмите «Запустить сценарий». Я получил помощь от моего коллеги А.К.

Например:

Var result1 refcursor; EXECUTE Schemaname.Tablename (param1, param2,: result1); print result1

С уважением, Праная.

1

Вы называете его execute:

EXECUTE my_procedure ('arg1', 'arg2'); 
+0

... только если вы это сделаете в SQL * Plus – mustaccio

+0

Это не работает. У меня есть один входной параметр и один указатель, объявленный как параметры. Я передаю параметр i/p, но мне нужно передать параметр o/p, если мне нужно, как я могу это сделать. – pranay

1

Если курсором является исм курсором:

declare 
    lcsr sys_refcursor; 
begin 
    package.procedure(input => input_parameter_value, output => lcsr); 

    /* Do something with lcsr */ 
end; 
+0

Обратите внимание, что код выше этого НЕ является скомпилированной процедурой pl/sql. Это анонимный блок, который может быть выполнен непосредственно в SQLPLUS или на рабочем столе SQL Developer. Это в основном способ запуска скриптов pl/sql напрямую, без необходимости их компиляции. – ivanatpr

0

У меня была такая же проблема, и я нашел много сообщений без ответов. Это решение:

начало your_procedure; конец;

0

попробовать это парни

НАЧАТЬ

ИмяПроцедуры;

Конец

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