mysql獲取數(shù)據(jù)庫和表的信息

如果你忘記數(shù)據(jù)庫或表的名字,或給定的表的結(jié)構(gòu)是什么(例如,它的列叫什么),怎么辦?mysql通過提供數(shù)據(jù)庫及其支持的表的信息的幾個語句解決這個問題。

你已經(jīng)見到了SHOW DATABASES,它列出由服務(wù)器管理的數(shù)據(jù)庫。為了找出當(dāng)前選擇了哪個數(shù)據(jù)庫,使用DATABASE( )函數(shù):

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

如果你還沒選擇任何數(shù)據(jù)庫,結(jié)果是NULL。

為了找出當(dāng)前的數(shù)據(jù)庫包含什么表(例如,當(dāng)你不能確定一個表的名字),使用這個命令:

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

如果你想要知道一個表的結(jié)構(gòu),可以使用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是列的數(shù)據(jù)類型,Null表示列是否能包含NULL值,Key顯示列是否被索引而Default指定列的默認(rèn)值。

如果表有索引,SHOW INDEX FROM tbl_name生成有關(guān)索引的信息。

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊14 分享