Mysql проверка сопоставления таблицы

Как я могу узнать, что такое сортировка таблицы? И.Е. Я хочу видеть:

+-----------------------------+
|  table  |     collation     |
|-----------------------------|
| t_name  |  latin_general_ci |
+-----------------------------+

Ответ 1

SHOW TABLE STATUS показывает информацию о таблице, включая сортировку.

Ответ 2

Вышеприведенный ответ велик, но на самом деле он не дает примера, который позволяет пользователю искать синтаксис:

show table status like 'test';

Где test - имя таблицы.

(Исправлено в соответствии с комментариями ниже.)

Ответ 3

Используйте этот запрос:

SHOW CREATE TABLE tablename

Вы получите всю информацию, связанную с таблицей.

Ответ 4

Вы также можете запросить INFORMATION_SCHEMA.TABLES и получить параметры сортировки для конкретной таблицы:

SELECT TABLE_SCHEMA
    , TABLE_NAME
    , TABLE_COLLATION 
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME ='t_name';

это дает намного более читаемый вывод в отличие от SHOW TABLE STATUS который содержит много не относящейся к делу информации.

Обратите внимание, что параметры сортировки также могут применяться к столбцам (которые могут иметь параметры, отличные от самой таблицы). Чтобы получить параметры сортировки столбцов для конкретной таблицы, вы можете запросить INFORMATION_SCHEMA.COLUMNS:

SELECT TABLE_SCHEMA 
    , TABLE_NAME 
    , COLUMN_NAME 
    , COLLATION_NAME 
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME ='t_name';