Выберите список ключей таблицы в MySQL - PullRequest
5 голосов
/ 19 мая 2011

Допустим, у меня есть таблица "products", и я хотел бы проверить, есть ли в этой таблице какие-либо индексы, внешние ключи и т. Д.

А "DESCRIBE products" даст некоторую информацию.

Field        Type           Null    Key    Default   Extra
productCode  varchar(200)   NO      MUL    NULL  
description  varchar(500)   NO             NULL 

Преимущественно ключевое поле в корпусе.Но, к счастью, нет ссылок и какая таблица связана с кем и т. Д. И т. Д.

Каков наилучший способ получения такой информации с помощью SQL о таблице?

Спасибо

Ответы [ 5 ]

7 голосов
/ 19 мая 2011

Вы можете использовать

SHOW CREATE TABLE products

, который дает вам запрос для создания таблицы.Наиболее информативно.

4 голосов
/ 19 мая 2011

SHOW INDEXES IN <tablename> выдаст все индексы в этой таблице.

0 голосов
/ 19 мая 2011

$ result = mysql_query ("ПОКАЗАТЬ ПОЛЯ ИЗ $ DATABASE. $ TABLE_NAME");

$ i = 0;

while ($ row = mysql_fetch_array ($ result)) {echo$ row ['Field'].''.$ Строки [ 'Тип'];}

0 голосов
/ 19 мая 2011

Лучший способ - использовать INFORMATION_SCHEMA, как указано здесь:

http://dev.mysql.com/doc/refman/5.5/en/information-schema.html

0 голосов
/ 19 мая 2011

Я не знаю о внешних ключах, но SHOW INDEX FROM tablename; дает много легко анализируемой информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...