Условные операторы

  • Часть 1
  • | 2

При программировании на PSQL существует возможность использовать следующие типы условных структур:

-       ветвление, управляемое оператором IF…THEN…ELSE;

-       циклическое выполнение группы операторов, пока условие WHILE не станет ложным.

Оператор ветвления IF

Оператор ветвления IF имеет следующий формат:

IF (логическое_условие) THEN<группа_операторов1> [ELSE <группа_операторов2>],

где логическое_условие– любой предикат, который должен быть истинным, чтобы выполнилась <группа_операторов>, следующая за THEN; <группа_операторов> ::= { <блок_операторов>

| DML_оператор

| оператор_процедурного_языка_Firebird };

<блок_операторов> ::= BEGIN

[<группа_операторов> …] END.

Блок операторов – это группа операторов SQL, рассматриваемых как единое целое. Блок операторов начинается с зарезервированного слова BEGIN и заканчивается зарезервированным словом END. При этом блок операторов может содержать вложенный блок операторов, заключенный в операторные скобки BEGINEND, и т.д. Для вложенных блоков после зарезервированного слова END разделительная точка с запятой не ставится. Следует отметить, что между BEGIN…END может не быть ни одного оператора, т.е. допустим "пустой" блок операторов.

Следует отметить, что если <группа_операторов> представляет собой один единственный DML_операторили оператор_процедурного_языка_Firebird, то заключать данный оператор в скобки BEGIN… END не обязательно.

Следующий фрагмент кода иллюстрирует использование оператора IF в теле ХП в предположении, что Street_Cod, House_Nom, Flat_Nom были ранее объявлены как локальные переменные или входные параметры, а Line – как локальная переменная или выходной параметр:

предыдущаяследующая