MySQL™ 參考手冊(獲取有關數據庫和表的信息)

獲取有關數據庫和表的信息

若是你忘記了數據庫或表的名稱,或者給定表的結構是什麼(例如,它的列被稱爲何),該怎麼辦?MySQL經過幾個語句來解決這個問題,這些語句提供有關它支持的數據庫和表的信息。mysql

你以前已經看過SHOW DATABASES,它列出了服務器管理的數據庫,要找出當前選擇的數據庫,請使用DATABASE()函數:sql

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

若是還沒有選擇任何數據庫,則結果爲NULL數據庫

要找出默認數據庫包含的表(例如,當你不肯定表的名稱時),請使用如下語句:segmentfault

mysql> SHOW TABLES;
+---------------------+
| Tables_in_menagerie |
+---------------------+
| event               |
| pet                 |
+---------------------+

此語句生成的輸出中的列名稱始終爲Tables_in_db_name,其中db_name是數據庫的名稱。服務器

若是要了解表的結構,DESCRIBE語句頗有用,它顯示有關每一個表的列的信息:函數

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    |       |
+---------+-------------+------+-----+---------+-------+

Field表示列名稱,Type是列的數據類型,NULL表示列是否能夠包含NULL值,Key指示該列是否索引,Default指定列的默認值,Extra顯示有關列的特殊信息:若是使用AUTO_INCREMENT選項建立列,則該值將爲auto_increment而不是空。code

DESCDESCRIBE的簡短形式。索引

你能夠使用SHOW CREATE TABLE語句獲取建立現有表所需的CREATE TABLE語句。ci

若是表上有索引,則SHOW INDEX FROM tbl_name會生成有關它們的信息。rem


上一篇:使用多個表

相關文章
相關標籤/搜索