34.6. attributes#

34.6. attributes

34.6. attributes

Представление attributes содержит информацию о атрибутах составных типов данных, определенных в базе данных. (Обратите внимание, что представление не дает информации о столбцах таблицы, которые иногда называются атрибутами в контекстах PostgreSQL). Показываются только те атрибуты, к которым текущий пользователь имеет доступ (путем являясь владельцем или имея некоторое привилегия на тип).

Таблица 34.4. attributes Колонки

Тип столбца

Описание

udt_catalog sql_identifier

Имя базы данных, содержащей тип данных (всегда текущая база данных)

udt_schema sql_identifier

Имя схемы, содержащей тип данных

udt_name sql_identifier

Имя типа данных

attribute_name sql_identifier

Имя атрибута

ordinal_position cardinal_number

Порядковый номер атрибута внутри типа данных (счет начинается с 1)

attribute_default character_data

Выражение по умолчанию атрибута

is_nullable yes_or_no

YES если атрибут возможно может быть нулевым, NO если известно, что он не может быть нулевым.

data_type character_data

Тип данных атрибута, если это встроенный тип, или ARRAY, если это массив (в этом случае см. представление element_types), иначе USER-DEFINED (в этом случае тип определен в attribute_udt_name и связанные столбцы).

character_maximum_length cardinal_number

Если data_type определяет тип строки символов или битов, то это максимальная длина, указанная при объявлении; для всех остальных типов данных или если максимальная длина не была указана, значение равно null.

character_octet_length cardinal_number

Если data_type определяет тип символа, максимальная возможная длина в октетах (байтах) данных; null для всех остальных типов данных. Максимальная длина в октетах зависит от указанной максимальной длины символов (см. выше) и кодировки сервера.

character_set_catalog sql_identifier

Применяется к функциональности, недоступной в Tantor SE-1C

character_set_schema sql_identifier

Применяется к функциональности, недоступной в Tantor SE-1C

character_set_name sql_identifier

Применяется к функциональности, недоступной в Tantor SE-1C

collation_catalog sql_identifier

Имя базы данных, содержащей сортировку атрибута (всегда текущая база данных), null, если используется значение по умолчанию или тип данных атрибута не может быть сортирован

collation_schema sql_identifier

Имя схемы, содержащей упорядочение атрибута, null, если используется значение по умолчанию или тип данных атрибута не может быть упорядочен

collation_name sql_identifier

Имя правила сортировки атрибута: null, если используется значение по умолчанию или тип данных атрибута не может быть сортирован

numeric_precision cardinal_number

Если data_type определяет числовой тип, то эта колонка содержит (объявленную или неявную) точность типа для этого атрибута. Точность указывает количество значащих цифр. Она может быть выражена в десятичной (на основе 10) или двоичной (на основе 2) форме, как указано в колонке numeric_precision_radix. Для всех остальных типов данных эта колонка равна null.

numeric_precision_radix cardinal_number

Если data_type указывает на числовой тип, эта колонка указывает, в какой системе счисления выражены значения в колонках numeric_precision и numeric_scale. Значение может быть либо 2, либо 10. Для всех остальных типов данных эта колонка равна null.

numeric_scale cardinal_number

Если data_type определяет точный числовой тип, то эта колонка содержит (объявленную или неявную) шкалу типа для этого атрибута. Шкала указывает количество значащих цифр справа от десятичной точки. Она может быть выражена в десятичных (десятичная система счисления) или двоичных (двоичная система счисления) терминах, как указано в колонке numeric_precision_radix. Для всех остальных типов данных эта колонка равна null.

datetime_precision cardinal_number

Если data_type определяет тип даты, времени, метки времени или интервала, то эта колонка содержит (объявленную или неявную) точность дробных секунд для этого типа атрибута, то есть количество десятичных знаков, сохраняемых после десятичной точки в значении секунд. Для всех остальных типов данных эта колонка равна null.

interval_type character_data

Если data_type определяет тип интервала, этот столбец содержит спецификацию, какие поля включаются в интервал для этого атрибута, например, YEAR TO MONTH, DAY TO SECOND и т. д. Если не были указаны ограничения на поля (то есть интервал принимает все поля), и для всех остальных типов данных, это поле равно null.

interval_precision cardinal_number

Применяется к функциональности, недоступной в Tantor SE-1C (см. datetime_precision для точности долей секунд атрибутов типа интервал)

attribute_udt_catalog sql_identifier

Имя базы данных, в которой определен тип данных атрибута (всегда текущая база данных)

attribute_udt_schema sql_identifier

Имя схемы, в которой определен тип данных атрибута

attribute_udt_name sql_identifier

Имя типа данных атрибута

scope_catalog sql_identifier

Применяется к функциональности, недоступной в Tantor SE-1C

scope_schema sql_identifier

Применяется к функциональности, недоступной в Tantor SE-1C

scope_name sql_identifier

Применяется к функциональности, недоступной в Tantor SE-1C

maximum_cardinality cardinal_number

Всегда null, потому что массивы всегда имеют неограниченную максимальную кардинальность в Tantor SE-1C

dtd_identifier sql_identifier

Идентификатор дескриптора типа данных столбца, уникальный среди дескрипторов типов данных, относящихся к таблице. Это особенно полезно для объединения с другими экземплярами таких идентификаторов. (Конкретный формат идентификатора не определен и не гарантируется, что он останется таким же в будущих версиях).

is_derived_reference_attribute yes_or_no

Применяется к функциональности, недоступной в Tantor SE-1C


См. также раздел Раздел 34.17, где представлена аналогичная структура представления, для получения дополнительной информации о некоторых столбцах.