ORA-00900: недопустимая инструкция SQL - при запуске процедуры в oracle 10g

Я использую базу данных Oracle 10g и пытаюсь запустить процедуру с помощью команд SQL.

create or replace procedure "exam" is
begin
  DBMS_OUTPUT.PUT_LINE('Test');
end;

затем нажмите кнопку "Выполнить". Он показывает: "процедура создана".

когда я пытаюсь выполнить его, используя:

execute exam;

затем нажмите кнопку Run, она показывает:

ORA-00900: invalid SQL statement

Спасибо за вашу помощь.

3 ответов


просто заметил деталь в вашем вопросе. Вы нажимаете . Таким образом, вы должны использовать IDE.

вы не можете использовать execute в IDEs-это . Это может работа в Oracle SQL Developer, но я бы не использовал его там в любом случае;

попробовать

begin
  exam;
end;

потерять двойные кавычки вокруг имени. Это плохая практика в Oracle.


посмотреть: синтаксическая ошибка при попытке вызвать пакет Oracle с помощью ODBC в C#

вы должны поставить "{" и "}" перед командой. Пример:

    processListCmd.CommandType = CommandType.StoredProcedure;
    processListCmd.CommandText = "{ call rep_invnr_proclist }";
    processListCmd.ExecuteNonQuery();