Определение типа данных столбца
Спецификация
См. спецификацию пункта «Создание таблицы».
Синтаксические правила
-
Характеристика
< типов данных столбца >
приведена в разделе «Типы данных». -
Параметр
< длина >
типов данных CHAR, VARCHAR, BYTE, VARBYTE – положительное целое, не превосходящее 4000 символов. По умолчанию для типов данных CHAR и BYTE значение< длина >
считается равным 1. -
Параметр
< длина >
типов данных NCHAR, NCHAR VARYING – положительное целое, не превосходящее 2000 символов. По умолчанию для типа данных NCHAR< длина >
считается равной 1. -
По умолчанию точность типа данных REAL – 6 десятичных цифр.
-
По умолчанию точность типа данных DOUBLE – 15 десятичных цифр.
-
Тип данных FLOAT [(
< точность >
)] определяет приближенный тип данных (синоним типов данных REAL и DOUBLE).< Точность >
– целое положительное число в диапазоне от 1 до 53, задающее двоичную точность приближенного значения. Если< точность >
< = 24, это воспринимается как тип данных REAL, при значении< точности >
в диапазоне от 25 до 53 – как DOUBLE. Если< точность >
не задана, по умолчанию принимается DOUBLE.create or replace table test (col1 real, col2 DOUBLE PRECISION, col3 DOUBLE, col4 float(10), col5 FLOAT);
-
Тип данных DECIMAL | DEC | NUMERIC задает знаковое или беззнаковое десятичное число с общим количеством цифр не более 30 (включая лидирующие и завершающие нули, атрибут
< точность >
) и максимум 10 цифр справа от десятичной точки (включая младшие нули, атрибут< мантисса >
). -
Максимальное количество столбцов в одной таблице не должно превышать 250.
-
В качестве
< кодировки >
для BLOB-столбцов можно использовать имена однобайтовых (CP866, CP1251, KOI8-R, …), многобайтовых (UTF-8, EUC-JP, CP932, …) и UNICODE (UCS2) кодировок. -
Опция CHARACTER SET
< кодировка >
применительно к столбцу с символьным типом данных задает кодировку конкретно этого столбца. Данная кодировка является приоритетной по сравнению с кодировкой, заданной для всей таблицы.create or replace table test character set "KOI8-R" (col1 char(10) character set cp1251, col2 nchar(50), col3 varchar(200) character set "CP866", col4 char(66));
-
При создании системных таблиц для символьных данных всегда используется кодировка системного словаря (DEFAULT) или заданная командой SET DATABASE NAMES.
-
Для обычных базовых таблиц, если
< кодировка >
CHAR/VARCAHAR/BLOB-столбца не задана:-
используется кодировка, установленная для таблицы;
-
если кодировка для таблицы не задана, то используется кодировка, заданная командой SET NAMES;
-
если не задана ни одна из кодировок предыдущих пунктов, то используется кодировка DEFAULT с идентификатором #0 (кодировка поддерживает первые 128 символов кодировки "CP437").
-
-
Опция
ROOT < каталог >
задает местоположение на диске внешних файлов столбца данных типа EXTFILE (по умолчанию, если опция не задана, используется каталог БД).create or replace table test (col1 extfile, col2 extfile root 'c:\Program Files\Document'); create or replace table test (col1 extfile, col2 ef root 'c:\linter\db');