FirebirdSQL logo
 Структура языка SQLОбщие элементы языка 

Синтаксис скалярных типов данных

Скалярные типы данных — это простые типы данных, которые содержат одно значение.Синтаксис типов BLOB рассматривается отдельно в секции Синтаксисе типов данных BLOB.

Синтаксис:
<domain_or_non_array_type> ::=
    <scalar_datatype>
  | <blob_datatype>
  | [TYPE OF] domain
  | TYPE OF COLUMN rel.col

<scalar_datatype> ::=
    {SMALLINT | INT[EGER] | BIGINT | INT128}
  | BOOLEAN
  | {FLOAT | REAL | DOUBLE PRECISION}
  | [LONG] FLOAT [(binary-precision)]
  | DECFLOAT[({16 | 34})]
  | DATE
  | {TIME | TIMESTAMP} [{WITH | WITHOUT} TIME ZONE]
  | {DECIMAL | NUMERIC} [(precision [, scale])]
  | {VARCHAR | {CHAR | CHARACTER} VARYING} (length)
    [CHARACTER SET charset]
  | {CHAR | CHARACTER} [(length)] [CHARACTER SET charset]
  | {NCHAR | NATIONAL {CHARACTER | CHAR}} VARYING (length)
  | {NCHAR | NATIONAL {CHARACTER | CHAR}} [(length)]
Table 1. Параметры декларации скалярных типов
Параметр Описание

domain

Имя домена (только не домены типа массив).

rel

Имя таблицы или представления.

col

Имя столбца таблицы или представления (только столбцы не типа массив).

binary-precision

Двоичная точность.От 1 до 53 бит.

precision

Десятичная точность.От 1 до 38 десятичных цифр.

scale

Масштаб или количество знаков после запятой.От 0 до 38.Оно должно быть меньше или равно точности.

length

Максимальная длина строки в символах.

charset

Набор символов.

domain_or_non_array_type

Типы, не являющиеся массивами, которые можно использовать в коде PSQL и операторе CAST.

Использование доменов в объявлениях

Имя домена может быть указано как тип параметра PSQL или локальной переменной.Параметр или переменная наследует все атрибуты домена.Если для параметра или переменной указано значение по умолчанию, оно переопределяет значение по умолчанию, указанное в определении домена.

Если предложение TYPE OF добавлено перед именем домена, то используется только тип данных домена: любые другие атрибуты домена — ограничение NOT NULL, ограничение CHECK, значение по умолчанию — не проверяются и не используются.Однако, если домен имеет текстовый тип, всегда используются его набор символов и последовательность сортировки.