Asql: компилятор SQL-запросов Назад В начало Вперед

Компилятор SQL-запросов предназначен для пакетного выполнения SQL-запросов. В т.ч.:

Фактически, компилятор SQL-запросов является подмножеством компилятора VIP. Синтаксис выполняемых SQL-запросов а также хранимых процедур и функций совпадает с синтаксисом соответствующих конструкций языка VIP.

Подробнее об операторах SQL и прямого SQL см. "Средство разработки Атлантис. Описание языка VIP".

Компилятор SQL-запросов может использоваться при:

Запуск компилятора SQL-запросов:

asql [<компилируемый-файл>] [<ключи>]

<компилируемый-файл> - файл с операторами SQL. В имени файла допускается использовать маски: *.lot, staff*.* и т.п. В этом случае будут откомпилированы все файлы, соответствующие заданной маске.

<ключи> - ключи, управляющие режимом компиляции:

/? - выдать подсказку по параметрам компилятора.

/c:<файл-конфигурации> - задать файл конфигурации компилятора. Например:

/c:"%RPP_HOME%\support.cfg"
/c:galaktika.cfg

В первом случае имя файла конфигурации заключено в кавычки, т.к. в %RPP_HOME% могут встретиться имена с пробелами.

/<параметр-файла-конфигурации> - параметры, прописываемые в файле конфигурации, могут быть заданы и в командной строке. Параметры задаются в виде <секция>.<параметр>=<значение>. Для многих параметров имеются краткие синонимы.

Протокол компиляции записывается в файл asql.log в текущей директории.

Параметры работы компилятора задаются в конфигурационном файле. По умолчанию используется файл asql.cfg в текущей директории. Конфигурационный файл можно задать явно с помощью ключа /c.

Asql управляется теми же параметрами, что и VIP (см. раздел "Параметры компилятора VIP. ").

Примеры

Выполнить пакет обновлений БД: добавить записи, скорректировать все записи, добавить хранимую процедуру и получить отчет об итоговом содержимом таблицы. Операторы выполняются с правами супервизора:

asql.exe insert.lot /U:supervisor /#User:supervisor
asql.exe update.lot /U:supervisor /#User:supervisor
asql.exe SqlProcedure.lot /U:supervisor /#User:supervisor
asql.exe selectSQL.lot /U:supervisor /#User:supervisor

Файл insert.lot содержит добавляемые записи:

insert APPENDIX set APPENDIX.ABSTRACT = 'запись 0';
insert APPENDIX set APPENDIX.ABSTRACT = 'запись 3-1';
insert APPENDIX set APPENDIX.ABSTRACT = 'запись 3-2';
insert APPENDIX set APPENDIX.ABSTRACT = 'запись 2-1';
insert APPENDIX set APPENDIX.ABSTRACT = 'запись 2-2';

Файл selectSQL.lot содержит оператор прямого SQL на вывод содержимого указанных полей таблицы APPENDIX:

SQL select NRec, ATL_LASTUSER, ATL_BRANCH, ABSTRACT from APPENDIX;

Файл SqlProcedure.lot содержит текст хранимой процедуры:

sql procedure aaa(s : string);
{
  insert into APPENDIX(ABSTRACT) values(s);
}

Файл update.lot содержит задание на корректировку поля ABSTRACT:

update APPENDIX set APPENDIX.ABSTRACT = APPENDIX.ABSTRACT+' updated';

Версия

Начиная с Атлантис 5.4.02.