Командная строка Oracle SqlPlus: есть ли способ объединить заданные параметры? - PullRequest
1 голос
/ 18 марта 2010

Мне нужно настраивать некоторые параметры SET в программе командной строки Oracle SQLplus при каждом его использовании, такие как SET HEADING OFF и т.п., чтобы украсить мои результаты. Я обнаружил, что мне всегда нужно вводить каждую строку отдельно, поэтому задайте разные параметры, и это становится раздражающим, так как мне нужно обращаться к нему много раз в день.

Я обнаружил, что невозможно разделить различные команды SET точкой с запятой, потому что он не принимает их:

SET HEADING OFF; SET LINESIZE 100;

возвращает ошибку

Решением может быть добавление их в сценарий управления и создание псевдонима оболочки, но я знаю, что сценарии управления выполняются, а затем завершаются и не возвращают контроль над командной строкой.

Так, кто-нибудь знает другое решение? Или я что-то упустил?

Ответы [ 2 ]

2 голосов
/ 18 марта 2010

Хорошо, отвечая на мой собственный вопрос: примерно это возможно сделать:

SET HEADING OFF LINESIZE 100 PAGESIZE 0 xxx xxx

И продолжайте добавлять правила по мере их появления.

На данный момент это простое и эффективное решение.

1 голос
/ 18 марта 2010

Поместите все свои команды в файл ".sql" (например, "format.sql"), затем выполните их с помощью команды "@" в Sql * plus (например, "@format").

Обратите внимание, что по умолчанию используется суффикс ".sql" при поиске командного файла.

Например, если «format.sql» содержит команды «установить размер строки 100» и «установить размер страницы 0»:

% sqlplus

SQL*Plus: Release 10.2.0.1.0 - Production on Thu Mar 18 08:39:03 2010
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
SQL> show linesize
linesize 80
SQL> @format
SQL> show linesize
linesize 100
SQL> select 1+1 from dual;
     2
...