FirebirdSQL logo

GDSCODE

Доступно в

PSQL

Синтаксис
GDSCODE
Тип возвращаемого результата

INTEGER

В блоке обработки ошибок WHEN …​ DO контекстная переменная GDSCODE содержит числовое представление текущего кода ошибки Firebird.До версии Firebird 2.0 GDSCODE можно было получить только с использованием конструкции WHEN GDSCODE.Теперь эту контекстную переменную можно также использовать в блоках WHEN ANY, WHEN SQLCODE и WHEN EXCEPTION при условии, что код ошибки соответствует коду ошибки Firebird.Вне обработчика ошибок GDSCODE всегда равен 0.Вне PSQL GDSCODE не существует вообще.

Example 1. Использование переменной GDSCODE
...
WHEN GDSCODE GRANT_OBJ_NOTFOUND,
     GDSCODE GRANT_FLD_NOTFOUND,
     GDSCODE GRANT_NOPRIV,
     GDSCODE GRANT_NOPRIV_ON_BASE
DO
BEGIN
  EXECUTE PROCEDURE LOG_GRANT_ERROR(GDSCODE);
  EXIT;
END
...
Note

Обратите внимание, пожалуйста: после, WHEN GDSCODE вы должны использовать символьные имена — такие, как grant_obj_notfound и т.д.Но контекстная переменная GDSCODE — целое число.Для сравнения его с определённой ошибкой вы должны использовать числовое значение, например, 335544551 для grant_obj_notfound.