如果您忘記資料庫或表格的名稱,或給定表格的結構(例如,其欄位名稱是什麼)該怎麼辦? MySQL 透過幾個陳述式來解決這個問題,這些陳述式提供有關其支援的資料庫和表格的資訊。
您之前已經看過 SHOW DATABASES
,它會列出伺服器管理的資料庫。若要找出目前選取的資料庫,請使用 DATABASE()
函式
mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| menagerie |
+------------+
如果您尚未選取任何資料庫,則結果為 NULL
。
若要找出預設資料庫包含哪些表格(例如,當您不確定表格的名稱時),請使用此陳述式
mysql> SHOW TABLES;
+---------------------+
| Tables_in_menagerie |
+---------------------+
| event |
| pet |
+---------------------+
此陳述式產生的輸出中,欄位的名稱永遠是 Tables_in_
,其中 資料庫名稱
資料庫名稱
是資料庫的名稱。如需更多資訊,請參閱 章節 15.7.7.38,「SHOW TABLES 陳述式」。
如果您想要找出表格的結構,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
而不是空白。
DESC
是 DESCRIBE
的簡短形式。如需更多資訊,請參閱 章節 15.8.1,「DESCRIBE 陳述式」。
您可以使用 SHOW CREATE TABLE
陳述式來取得建立現有表格所需的 CREATE TABLE
陳述式。請參閱 章節 15.7.7.11,「SHOW CREATE TABLE 陳述式」。
如果表格上有索引,SHOW INDEX FROM
會產生關於它們的資訊。如需更多關於此陳述式的資訊,請參閱 章節 15.7.7.23,「SHOW INDEX 陳述式」。表格名稱