FirebirdSQL logo
 FUNCTIONPACKAGE BODY 

Кто может создать пакет?

Выполнить оператор CREATE PACKAGE могут:

Пользователь, создавший заголовок пакета становится владельцем пакета.

Примеры

Example 1. Создание заголовка пакета
CREATE PACKAGE APP_VAR
AS
BEGIN
  FUNCTION GET_DATEBEGIN() RETURNS DATE DETERMINISTIC;
  FUNCTION GET_DATEEND() RETURNS DATE DETERMINISTIC;
  PROCEDURE SET_DATERANGE(ADATEBEGIN DATE, ADATEEND DATE DEFAULT CURRENT_DATE);
END

То же самое, но процедуры и функции пакета будут выполняться с правами определяющего пользователя (владельца пакета).

CREATE PACKAGE APP_VAR
SQL SECURITY DEFINER
AS
BEGIN
  FUNCTION GET_DATEBEGIN() RETURNS DATE DETERMINISTIC;
  FUNCTION GET_DATEEND() RETURNS DATE DETERMINISTIC;
  PROCEDURE SET_DATERANGE(ADATEBEGIN DATE, ADATEEND DATE DEFAULT CURRENT_DATE);
END