PL / SQL Developer: несколько операторов? - PullRequest
10 голосов
/ 03 августа 2011

У меня есть скрипт, который генерирует текстовый файл, содержащий несколько операторов SQL UPDATE:

UPDATE TableX SET Field1 = 'New value 1' WHERE Field2='1';
UPDATE TableX SET Field1 = 'New value 2' WHERE Field2='2';
UPDATE TableX SET Field1 = 'New value 3' WHERE Field2='3';
etc.

Когда я вставляю вышеуказанный блок текста в окно SQL в PL / SQL Developer, он говорит мне, чтоточка с запятой является недопустимым символом.Когда я удаляю его, он сообщает мне, что мой первый оператор не был правильно завершен.

Как мне запустить эти операторы в одном выполнении?

Ответы [ 4 ]

7 голосов
/ 03 августа 2011

Я думаю, что вы используете тестовое окно.Это может выполнить только один оператор.Окно SQL и окно команд могут выполнять несколько операторов.

Если вам нужно запустить это в тестовом окне, вы можете встроить его в блок begin..end, чтобы сделать его блоком инструкций PL / SQL.

3 голосов
/ 03 сентября 2013

Я тоже сталкивался с этой ошибкой.Вам нужно перейти в инструменты-> настройки.В типах окон перейдите в окно SQL и выберите «Автовыбор заявления»Это должно устранить ошибку.

2 голосов
/ 05 сентября 2011

попробуйте так;

UPDATE TableX SET Field1 = 'New value 1' WHERE Field2='1'
/
UPDATE TableX SET Field1 = 'New value 2' WHERE Field2='2'
/
UPDATE TableX SET Field1 = 'New value 3' WHERE Field2='3'
/
1 голос
/ 11 декабря 2012

Привет,

Вы можете попробовать это.

Declare 
Begin 
 UPDATE TableX SET Field1 = 'New value 1' WHERE Field2='1';  
 UPDATE TableX SET Field1 = 'New value 2' WHERE Field2='2'; 
 UPDATE TableX SET Field1 = 'New value 3' WHERE Field2='3'; 
End;

в sql developer для выполнения нескольких запросов, необходимых для создания анонимного блока.

надеюсь, что это сделает вашу работулегко.

...