FirebirdSQL logo

Оператор присваивания

Назначение

Присваивание переменной значения.

Доступно в

PSQL

Синтаксис
varname = <value_expr>;
Table 1. Параметры оператора присваивания
Параметр Описание

varname

Имя локальной переменной или параметра процедуры (функции).

value_expr

Выражение, константа или переменная совместимая по типу данных с varname.

PSQL использует символ равенства (‘=’) в качестве своего оператора присваивания.Оператор присваивания устанавливает переменной слева от оператора значение SQL выражения справа.Выражением может быть любое правильное выражение SQL.Оно может содержать литералы, имена внутренних переменных, арифметические, логические и строковые операции, обращения к встроенным функциям и к функциям, определённым пользователем.

Example 1. Использование оператора присваивания
CREATE PROCEDURE MYPROC (
    a INTEGER,
    b INTEGER,
    name VARCHAR (30)
)
RETURNS (
    c INTEGER,
    str VARCHAR(100))
AS
BEGIN
  -- присваиваем константу
  c = 0;
  str = '';
  SUSPEND;
  -- присваиваем значения выражений
  c = a + b;
  str = name || CAST(b AS VARCHAR(10));
  SUSPEND;
  -- присваиваем значение выражения
  -- построенного с использованием запроса
  c = (SELECT 1 FROM rdb$database);
  -- присваиваем значение из контекстной переменной
  str = CURRENT_USER;
  SUSPEND;
END
См. также:

DECLARE VARIABLE.

LEAVE

Назначение

Выход из цикла.

Доступно в

PSQL

Синтаксис
[label:]
<loop_stmt>
BEGIN
  ...
  LEAVE [label];
  ...
END

<loop_stmt> ::=
    FOR <select_stmt> INTO <var_list>  DO
  | FOR EXECUTE STATEMENT ... INTO <var_list> DO
  | WHILE (<condition>) DO
Table 1. Параметры оператора LEAVE
Параметр Описание

label

Метка.

select_stmt

Оператор SELECT.

condition

Логическое условие возвращающее TRUE, FALSE или UNKNOWN.

Оператор LEAVE немедленно прекращает работу внутреннего цикла операторов WHILE или FOR.С использованием необязательного параметра label, LEAVE также может выйти и из внешнего цикла, то есть цикла помеченного меткой `.Код продолжает выполняться с первого оператора после завершенного блока цикла.