Spec-Zone.ru › MySQL 9.2

28.3.8 Таблица INFORMATION_SCHEMA COLUMNS

Таблица COLUMNS предоставляет информацию о столбцах в таблицах. Соответствующая таблица ST_GEOMETRY_COLUMNS предоставляет информацию о столбцах таблиц, хранящих пространственные данные. См. Раздел 28.3.37, «Таблица 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

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

  • COLLATION_NAME

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

  • COLUMN_TYPE

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

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

  • COLUMN_KEY

    Информация о наличии индекса в столбце:

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

    • Если COLUMN_KEY равно PRI, столбец является частью PRIMARY KEY или является одним из столбцов в многостолбцовом 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.21.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.21.11, «Сгенерированные невидимые первичные ключи».

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

Spec-Zone.ru

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