2013-12-23 4 views
0

У меня есть следующий код:PL/SQL Commit Выпуск

BEGIN 
DBMS_SCHEDULER.DROP_JOB (
job_name => 'MYJOB'); 
END; 

COMMIT; 

Я получаю следующее сообщение об ошибке:

Сообщить об ошибке: ORA-06550: строка 6, колонка 1: PLS-00103 : Обнаружен символ «COMMIT» 06550. 00000 - «строка% s, столбец% s: \ n% s» * Причина: Обычно ошибка компиляции PL/SQL. * Действие:

В чем проблема с синтаксисом, который я использую для фиксации?

ответ

4

Это должно быть первым commit, а затем end, как показано ниже

BEGIN 
DBMS_SCHEDULER.DROP_JOB (
job_name => 'MYJOB'); 
COMMIT; 
END; 

Вот как документация Oracle указать. Если вы говорите commit, то end должен проехать последним. остальное просто сделать это как

BEGIN 
DBMS_SCHEDULER.DROP_JOB (
job_name => 'MYJOB');  
END; 
/

посмотреть здесь http://docs.oracle.com/cd/B28359_01/server.111/b28310/scheduse002.htm#ADMIN12401

+0

Является ли это свойство совершать анонимный блок? Например, что делать, если я сделал что-то вроде «BEGIN ... END; UPDATE ...; COMMIT;» –

+0

@KyleGrage, см. Править – Rahul

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