EDIT
Формат
EDIT [< спецификация файла >]
< спецификация файла >::= местонахождение (полный путь, имя и расширение) редактируемого SQL-скрипта.
Если
< спецификация файла > не задана, по умолчанию используется файл
inl.buf
из
каталога запуска
inl.
Назначение
Интерактивное создание/редактирование SQL-скрипта.
Описание
Команда EDIT используется для интерактивного (т.е. не выходя в операционную систему) создания или редактирования SQL-скрипта во внешнем буфере inl.
Все SQL-запросы и команды, которые влияют на отображение результатов выполнения SQL-запросов, inl запоминает и хранит в своем рабочем буфере размером 64 Кбайт. Таким образом, максимальная длина SQL-запроса, обрабатываемого программой inl, равна 64 Кбайт.
Рабочий буфер всегда (кроме самого первого запуска
inl
после установки СУБД ЛИНТЕР) содержит два объекта: последнюю
выполненную команду (outfil
, header
, unload
или !
) и последний
(введенный пользователем) или выполненный программой
inl
SQL-запрос.
После выполнения SQL-запроса его текст из буфера не удаляется, поэтому можно:
-
повторить его выполнение необходимое число раз (например, с различными значениями параметров параметризованного SQL-запроса);
-
отредактировать и выполнить;
-
сохранить в отдельном файле для будущего использования.
Повторное выполнение SQL-запроса выполняется по команде EXEC.
Процесс подготовки и выполнения SQL-запроса в интерактивном режиме проходит в следующей последовательности:
-
выполнить команду edit.
SQL >edit
после чего inl:
-
удаляет из текущего каталога файл
inl.buf
(если он там есть); -
открывает на запись новый файл
inl.buf
(все в том же текущем каталоге); -
переписывает из внутреннего буфера в файл
inl.buf
последний выполненный (введенный) SQL-запрос и, если есть, последнюю команду форматирования; -
закрывает файл
inl.buf
и вызывает на выполнение стандартный системный редактор текстовых файлов (рисунок 5) (например, в среде ОС Windows это Notepad), который открывает файлinl.buf
.Рисунок 5. Окно текстового редактора
-
-
ввести (если файл
inl.buf
пуст) или откорректировать (при необходимости) с помощью стандартных средств редактора текст SQL-скрипта; -
сохранить при необходимости созданный (откорректированный) SQL-скрипт в отдельном текстовом файле;
-
выйти из редактора. INL переписывает содержимое
inl.buf
в свой внутренний буфер. После этого созданный (откорректированный) SQL-скрипт можно выполнить сразу же или позднее по команде EXEC; -
при активизации редактора вместо открываемого по умолчанию файла
inl.buf
можно с помощью стандартных средств самого редактора открыть любой ранее созданный SQL-скрипт, текст которого будет сохранен при закрытии редактора по умолчанию вinl.buf
.
Пример
!Запуск редактора для ввода текста SQL-скрипта SQL >edit !В окне редактора вводим текст SQL-скрипта и сохраняем его !в файле по умолчанию inl.buf, закрываем редактор !Выполняем созданный SQL-скрипт SQL >exec !Получаем код завершения «Несуществующая таблица» !Просматриваем текст последнего выполненного SQL-запроса SQL >list !Среди выданных командой list параметров находим текст выполненного SQL-запроса Запрос: select count(*) from avto; !Вызовем редактор для исправления ошибки SQL >edit !В окне редактора вносим исправление в текст SQL-скрипта и сохраняем его в файле по умолчанию inl.buf, закрываем редактор !Выполняем исправленный SQL-скрипт SQL >exec !Полученный результат смотрим в указанном в SQL-скрипте файле tst | 1000|