2010-10-15 79 views
14

我怎樣才能得到只是從mysql表中的表評論?我嘗試了以下方法,但由於各種原因而無法工作。我想弄清楚如何得到字符串'我的評論'(理想情況下通過perl =)如何從MySQL表訪問表註釋?

任何幫助嗎?

-- Abbreviated output for convenience. 
SHOW TABLE STATUS WHERE Name="foo" 
+------+--------+---------+------------+------+----------------+---------------+ 
| Name | Engine | Version | Row_format | Rows | Create_options | Comment  | 
+------+--------+---------+------------+------+----------------+---------------+ 
| foo | MyISAM |  10 | Fixed  | 0 |    | my comment | 
+------+--------+---------+------------+------+----------------+---------------+ 

SHOW CREATE TABLE foo; 
+-------+------------------------------------------------------------------------------+ 
| Table | Create Table                 | 
+-------+------------------------------------------------------------------------------+ 
| fooo | CREATE TABLE `fooo` (`id` int(11) NOT NULL PRIMARY KEY) COMMENT='my comment' | 
+-------+------------------------------------------------------------------------------+ 

回答

26

基於由OMG小馬答案,但使用INFORMATION_SCHEMA.TABLES代替INFORMATION_SCHEMA.COLUMNS。當在網絡上瀏覽時,我能找到的所有信息都是關於專欄的評論,但從來沒有在專欄中提到過。這是如何獲得表的評論。

SELECT table_comment 
    FROM INFORMATION_SCHEMA.TABLES 
    WHERE table_schema='my_cool_database' 
     AND table_name='user_skill'; 

+--------------------------+ 
| table_comment   | 
+--------------------------+ 
| my awesome comment  | 
+--------------------------+ 
1

如果您不想在查詢數據庫都名和表名,你可以使用:

SHOW TABLE STATUS WHERE Name='table_name'; 

然後拿起「註釋」結果的關鍵(你必須在php中使用像mysqli_fetch_assoc()這樣的關聯命令。