Recuperando Informações sobre Bancos de Dados, Tabelas, Colunas e Índices
Você pode usar nome_bd.nome_tabela como uma alternativa para a sintaxe nome_tabela FROM nome_bd. Estas duas declarações são equivalentes:
mysql>SHOW INDEX FROM minhatabela FROM meudb;mysql>SHOW INDEX FROM meubd.minhatabela;
SHOW DATABASES lista os bancos de dados no servidor MySQL. Você também pode obter esta lista utilizando o comando mysqlshow. Na versão 4.0.2 você verá apenas aqeules banco de dados para os quais você tem algum tipo de privilégio, se você não tiver o privilégio global SHOW DATABASES.
SHOW TABLES lista as tabelas em um banco de dados específico. Esta lista também pode ser obtida utilizando o comando mysqlshow nome_db.
NOTA: Se um usuário não possui nenhum privilégio para uma tabela, a tabela não será mostrada na saída de SHOW TABLES ou mysqlshow nome_db
SHOW OPEN TABLES lista as tabelas que estão abertas no cache de tabelas. Leia "Como o MariaDB Abre e Fecha as Tabelas". O campo Comment diz quantas vezes a tabela está em cached e in_use.
SHOW COLUMNS lista as colunas em uma determinada tabela. Se você especificar a opção FULL, também irá obter os privilégios que você possui para cada coluna. Se os tipos de colunas forem diferentes do que você esperava baseando na declaração CREATE TABLE, perceba que o MariaDB algumas vezes altera os tipos das colunas. Leia "Alteração de Especificações de Colunas". A partir do MariaDB, a palavra chave FULL também faz com que qualquer comentário por coluna seja mostrado.
A instrução DESCRIBE fornece informação similar à SHOW COLUMNS. Leia "Sintaxe DESCRIBE (Obtem Informações Sobre Colunas)".
SHOW FIELDS é um sinônimo para SHOW COLUMNS e SHOW KEYS um sinônimo para SHOW INDEX. Você também pode listar as colunas ou índices de uma tabela com mysqlshow nome_db nome_tabela ou mysqlshow -k nome_bd nome_tabela.
SHOW INDEX retorna a informação de índice em um formato que lembra bem a chamada SQLStatistics do ODBC. As seguintes colunas são retornadas:
| Coluna | Significado |
Table
| Nome da tabela. |
Non_unique
| 0 se o índice não puder conter duplicidades, 1 se puder |
Key_name
| Nome do índice. |
Seq_in_index
| Número da sequência da coluna no índice, à partir de 1. |
Column_name
| Nome da coluna. |
Collation
| Como a coluna é ordenada no índice. No MySQL, pode ter valores 'A' (Ascendente) ou NULL (Not sorted).
|
Cardinality
| Número de valores únicos no índice. Isto é atualizado executando isamchk -a.
|
Sub_part
| Número de caracteres indexados se a coluna só é a indexada parcialmente. NULL se a chave inteira for indexada.
|
Null
| Contém 'YES' se a coluna puder conter NULL.
|
Index_type
| Método de índice utilizado. |
Comment
| Vários comentários. No momento, ele diz no MariaDB < 4.0.2 se o índice é FULLTEXT ou não. |
Perceba que como o Cardinality é contado baseado nas estatísticas armazenadas como inteiros, ele pode não ser exato para tabelas pequenas.
As colunas Null e Index_type foram adicionadas no MariaDB 4.0.2.