Поддерживает ли SQLDeveloper выполнение скриптов? - PullRequest
24 голосов
/ 14 ноября 2008

Я пытался следовать некоторым инструкциям сегодня, и это начинается с комментария


REM  In SQLPlus I manually copy in each line and execute it.

Это хорошо, у меня нет SQLPlus, у меня есть SQLDeveloper. Вставленные строки были типа:


@\\server\dir\dir\dir\commandfile1.txt;
COMMIT;

... и т.д.

Не понравилось, когда я попробовал это в окне SQL. Я открыл и вставил команды вручную, и это тоже не понравилось. (Я упоминал, что я не так хорош ни с этим приложением, ни с Oracle, но что все остальные были сегодня?) Файлы там начинались с кода вроде:


rem
set echo on
rem
execute procedure_name ('parameter1', 'parameter2');

У сотрудника был SQLPlus, и мы вместе решили его. Но есть ли способ для меня сделать это с SQLDeveloper, так что я не застрял, если он тоже отсутствует?

Ответы [ 6 ]

61 голосов
/ 08 сентября 2010

Для запуска скриптов в SQL Developer:

@"\Path\Scriptname.sql"

(кавычки нужны только при наличии пробелов)

Можно установить путь по умолчанию: меню «Инструменты»> «Установки»> «База данных»> «Рабочий лист»> «Выбрать путь по умолчанию для поиска сценариев»

2 голосов
/ 16 декабря 2009

Я просматривал файлы справки и нашел, как это сделать, в разделе «Основные понятия и использование разработчика SQL» -> Использование таблицы SQL Works-> Script Runner.

Как правило, перед именем файла должен стоять символ @. Например, @C: \ MyScript \ Script.sql.

Затем вы можете запустить партию из них таким образом. Обратите внимание, что команде не нравятся пробелы в пути к файлу.

1 голос
/ 14 ноября 2008

Для каждого файла, который вам нужно запустить, найдите его и поместите в SQLDeveloper. Запустите скрипт (F5) и затем подтвердите (F11). Это будет работать для некоторых скриптов, но не для всех.

0 голосов
/ 16 января 2019

вы можете сделать это с помощью sqlcl так же, как вы сделали бы это с помощью SQL PLUS, из командной строки:

sqlcl user/password@host:port:sid @file.sql
Файл

должен находиться в том же каталоге, где находится sqlcl.

Это решение является лучшим вариантом, если вы пытаетесь выполнить много инструкций в файле sql.

0 голосов
/ 11 ноября 2017

SQL Developer в наши дни поставляется с другим инструментом под названием sqlcl . Это немного похоже на SQLPlus, но на самом деле использует некоторые биты из SQL Developer, чтобы предоставить совместимый интерфейс командной строки / типа сценариев.

Вы сможете использовать его для выполнения команд в стиле sqlplus, не борясь с дополнительными возможностями графического интерфейса в стиле SQL Developer, что может привести к путанице.

Ищите его там, где сидит SQL Developer. Если у вас его нет, вы можете скачать его и развернуть в папке sqldeveloper.

0 голосов
/ 14 ноября 2008

Это будет сделано:

begin
    procedure_name ('parameter1', 'parameter2');
end;
/
...