XOOPS Brasil

 

3.4. Obtendo Informações Sobre Bancos de Dados e Tabelas

E se você esquecer o nome de um banco de dados ou tabela, ou como é a estrutura de uma certa tabela (por exemplo, como suas colunas são chamadas)? O MySQL resolve este problema através de diversas instruções que fornecem informações sobre os bancos de dados e as tabelas que ele suporta.

Você já viu SHOW DATABASES, que lista os bancos de dados gerenciados pelo servidor. Para saber qual banco de dados está sendo usado atualmente, utilize a função DATABASE():

mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| menagerie |
+------------+

Se você ainda não selecionou nenhum banco de dados ainda, o resultado é NULL. (ou a string vazia antes do MySQL 4.1.1).

Para saber quais tabelas o banco de dados atual contêm (por exemplo, quando você não tem certeza sobre o nome de uma tabela), utilize este comando:

mysql> SHOW TABLES;
+---------------------+
| Tables in menagerie |
+---------------------+
| event |
| pet |
+---------------------+

Se você deseja saber sobre a estrutura de uma tabela, o comando DESCRIBE é útil; ele mostra informações sobre cada uma das colunas da tabela:

mysql> DESCRIBE pet;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name | varchar(20) | YES | | NULL | |
| owner | varchar(20) | YES | | NULL | |
| species | varchar(20) | YES | | NULL | |
| sex | char(1) | YES | | NULL | |
| birth | date | YES | | NULL | |
| death | date | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+

A coluna Field (campo) indica o nome da coluna, Type é o tipo de dados para a coluna, Null indica se a coluna pode conter valores nulos (NULL), key indica se a coluna é indexada ou não e Default especifica o valor padrão da coluna.

Se você tem índices em uma tabela, SHOW INDEX FROM tbl_nome traz informações sobre eles.