Дата публикации: 15.12.2009

Публикация текстов хранимых процедур в схеме метаданных PROCEDURES

Мы доработали загрузчики схемы PROCEDURES для получения текста хранимых процедур в колонке PROCEDURE_DEFINITION. Поддерживаются все сервера:

  • InterBase: v4.x, v5.x, v6.x, v7.x, v8.x (2007), v9 (2009)
  • Firebird: 0.9, 1.0, 1.5.x, 2.1.x, 2.5
  • Yaffil

Если вы используете Firebird 2.1, то рекомендуем обновиться как минимум до релиза FB 2.1.2 (см. Bug Tracker, CORE-2008).

При работе с Firebird 2.1 и Firebird 2.5, следует привести в порядок системные таблицы вашей базы данных. Смотрите в каталог «misc/upgrade/metadata» с вашей инсталляцией Firebird 2.1. При обнаружении проблем с метаданными, провайдер сгенерирует ошибку с достаточно подробным описанием.

Доработана команда вызова хранимой процедуры — exec SP

Пример процедуры:

CREATE PROCEDURE SP_TEST (A INTEGER=2)
 AS
  BEGIN
  ...
  END

В предыдущих версиях IBProvider команда exec SP_TEST транслировалась в команду EXECUTE PROCEDURE SP_TEST (см. свойство ado_exec_sp) . Подготовка такой команды происходила без проблем, однако провайдер не формировал список параметров автоматически.

В новой версии IBProvider v3.0.0.8195 вызов процедуры:

exec SP_TEST

транслируется с учетом входящих параметров в sql-команду:

EXECUTE PROCEDURE SP_TEST(?)

Ограничение команды exec SP: Начиная с Firebird 2.1, сервер поддерживает default-значения для параметров хранимых процедур, но к сожалению, Firebird не поддерживает специальный тип SQL_DEFAULT, при помощи которого можно было бы сообщить серверу о необходимости использовать значения по-умолчанию. Поэтому эту возможность сервера провайдер не поддерживает в полной мере.


Дата публикации: 15.12.2009. Права на материал принадлежат: IBProvider. При перепечатке ссылка на сайт https://www.ibprovider.com/rus обязательна.