Spec-Zone.ru › MySQL 8.4

28.3.8 Таблица INFORMATION_SCHEMA COLUMNS

Таблица COLUMNS предоставляет информацию о столбцах в таблицах. Связанная ST_GEOMETRY_COLUMNS таблица содержит информацию о столбцах таблиц, хранящих пространственные данные. Смотрите Раздел 28.3.35, «Таблица INFORMATION_SCHEMA ST_GEOMETRY_COLUMNS».

Таблица COLUMNS содержит следующие столбцы:

  • TABLE_CATALOG

    Имя каталога, к которому принадлежит таблица, содержащая столбец. Это значение всегда def.

  • TABLE_SCHEMA

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

  • TABLE_NAME

    Имя таблицы, содержащей столбец.

  • COLUMN_NAME

    Имя столбца.

  • ORDINAL_POSITION

    Позиция столбца в таблице. ORDINAL_POSITION необходима, поскольку вам может понадобиться указать ORDER BY ORDINAL_POSITION. В отличие от SHOW COLUMNS, SELECT из таблицы COLUMNS не имеет автоматической сортировки.

  • COLUMN_DEFAULT

    Значение по умолчанию для столбца. Это NULL, если столбец имеет явное значение по умолчанию NULL, или если определение столбца не включает в себя DEFAULT оператор.

  • IS_NULLABLE

    Возможность наличия NULL значений в столбце. Значение YES, если в столбце могут храниться значения NULL, и NO, если нет.

  • DATA_TYPE

    Тип данных столбца.

    Значение DATA_TYPE — это только имя типа без дополнительной информации. Значение COLUMN_TYPE содержит имя типа и, возможно, другую информацию, такую как точность или длина.

  • CHARACTER_MAXIMUM_LENGTH

    Для строковых столбцов — максимальная длина в символах.

  • CHARACTER_OCTET_LENGTH

    Для строковых столбцов — максимальная длина в байтах.

  • NUMERIC_PRECISION

    Для числовых столбцов — точность числа.

  • NUMERIC_SCALE

    Для числовых столбцов — масштаб числа.

  • DATETIME_PRECISION

    Для временных столбцов — точность дробной части секунды.

  • CHARACTER_SET_NAME

    Для столбцов типа строка — имя набора символов.

  • COLLATION_NAME

    Для столбцов типа строка — имя сортировки.

  • COLUMN_TYPE

    Тип данных столбца.

    Значение DATA_TYPE — это только имя типа без дополнительной информации. Значение COLUMN_TYPE содержит имя типа и, возможно, другую информацию, такую как точность или длина.

  • COLUMN_KEY

    Является ли столбец индексированным:

    • Если COLUMN_KEY пусто, столбец либо не индексирован, либо индексирован только как вторичный столбец в индексе с несколькими столбцами и без уникальности.

    • Если COLUMN_KEY равно PRI, столбец является ключевым столбцом или одним из столбцов в индексе с несколькими столбцами PRIMARY KEY.

    • Если COLUMN_KEY равно UNI, столбец является первым столбцом индекса UNIQUE. (Индекс UNIQUE допускает несколько значений NULL, но вы можете определить, допускает ли столбец NULL, проверив столбец Null.)

    • Если COLUMN_KEY равно MUL, столбец является первым столбцом не уникального индекса, в котором допускается несколько вхождений одного и того же значения в столбце.

    Если для данного столбца таблицы применимо более одного из значений COLUMN_KEY, COLUMN_KEY отображает значение с наивысшим приоритетом в порядке PRI, UNI, MUL.

    Индекс UNIQUE может отображаться как PRI, если он не может содержать NULL значений и в таблице нет PRIMARY KEY. Индекс UNIQUE может отображаться как MUL, если несколько столбцов формируют составной индекс UNIQUE; хотя комбинация столбцов уникальна, каждый столбец может всё ещё содержать несколько вхождений одного и того же значения.

  • EXTRA

    Любая дополнительная информация о столбце. Значение непустое в этих случаях:

    • auto_increment для столбцов, имеющих атрибут AUTO_INCREMENT.

    • on update CURRENT_TIMESTAMP для столбцов типов TIMESTAMP или DATETIME, имеющих атрибут ON UPDATE CURRENT_TIMESTAMP.

    • STORED GENERATED или VIRTUAL GENERATED для сгенерированных столбцов.

    • DEFAULT_GENERATED для столбцов, имеющих значение по умолчанию в виде выражения.

  • PRIVILEGES

    Привилегии, которые у вас есть для столбца.

  • COLUMN_COMMENT

    Любой комментарий, включенный в определение столбца.

  • GENERATION_EXPRESSION

    Для сгенерированных столбцов отображает выражение, используемое для вычисления значений столбца. Пусто для несгенерированных столбцов. Для получения информации о сгенерированных столбцах смотрите Раздел 15.1.20.8, «CREATE TABLE и сгенерированные столбцы».

  • SRS_ID

    Это значение применимо к пространственным столбцам. Оно содержит значение столбца SRID, которое указывает пространственную систему координат для значений, хранящихся в столбце. Смотрите Раздел 13.4.1, «Пространственные типы данных» и Раздел 13.4.5, «Поддержка пространственных систем координат». Значение равно NULL для не пространственных столбцов и пространственных столбцов без атрибута SRID.

Примечания

  • В SHOW COLUMNS отображение Type включает значения из нескольких различных столбцов COLUMNS.

  • CHARACTER_OCTET_LENGTH должно быть таким же, как CHARACTER_MAXIMUM_LENGTH, за исключением многобайтовых наборов символов.

  • CHARACTER_SET_NAME может быть получено из COLLATION_NAME. Например, если вы используете SHOW FULL COLUMNS FROM t, и вы видите в столбце COLLATION_NAME значение utf8mb4_swedish_ci, набор символов — это то, что находится перед первой подчёркивающей чертой: utf8mb4.

Информация о столбцах также доступна из оператора SHOW COLUMNS. Смотрите Раздел 15.7.7.6, «Оператор SHOW COLUMNS». Следующие операторы почти эквивалентны:

SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT
  FROM INFORMATION_SCHEMA.COLUMNS
  WHERE table_name = 'tbl_name'
  [AND table_schema = 'db_name']
  [AND column_name LIKE 'wild']

SHOW COLUMNS
  FROM tbl_name
  [FROM db_name]
  [LIKE 'wild']

Информация о сгенерированных невидимых столбцах первичного ключа отображается в этой таблице по умолчанию. Вы можете скрыть такую информацию, установив show_gipk_in_create_table_and_information_schema = OFF. Для получения более подробной информации, см. Раздел 15.1.20.11, «Сгенерированные невидимые первичные ключи».

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/information-schema-columns-table.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API