PHP快速獲取MySQL數據庫表結構


直接舉例某個數據庫中只有兩個數據表,一個 test ,一個 xfp_keywords ,獲取他們的數據庫表結構。

此功能可以用於開發人員快速獲取數據表結構通過獲取的數據生成各種文件形式,用來快速理解數據表結構和邏輯。

先上圖看效果,圖下面是實現的代碼:

 

PHP獲取上面數據庫結構的代碼:(php7暫不支持,自己可以換成php支持的數據擴展,如有需要可以聯系博主)

<style type="text/css"> table { border-collapse:collapse; } table tr td { border: 0.5px solid #666666;
        padding: 5px 10px; } </style>
<?php header('Content-Type: text/html; charset=utf-8'); $db_host = '127.0.0.1'; $db_username = 'db_username'; $db_password = 'db_password'; $db_database = 'information_schema'; $db_name = 'db_name'; $connection = mysql_connect($db_host, $db_username, $db_password); //連接到數據庫
mysql_query("set names 'utf8'"); //編碼轉化
if (!$connection) { die("could not connect to the database:</br>" . mysql_error()); //診斷連接錯誤
} $db_selecct = mysql_select_db($db_database); //選擇數據庫
 
if (!$db_selecct) { die("could not to the database</br>" . mysql_error()); } $sqlTable = "SELECT * FROM `TABLES` WHERE `TABLE_SCHEMA` = '{$db_name}'"; $queryTable = mysql_query($sqlTable); //執行查詢
$i = 1; $table = '<table>'; while ($rowTable = mysql_fetch_assoc($queryTable)) { if ($i > 1) { $table .= '<tr>'; $table .= '<td colspan="4">&nbsp;</td>'; $table .= '</tr>'; } $table .= '<tr>'; $table .= '<td>' . $rowTable['TABLE_NAME'] . '</td>'; $table .= '<td colspan="3">' . $rowTable['TABLE_COMMENT'] . '</td>'; $table .= '</tr>'; $table .= '<tr>'; $table .= '<td>字段名稱</td>'; $table .= '<td>字段類型</td>'; $table .= '<td>字段描述</td>'; $table .= '<td>備注</td>'; $table .= '</tr>'; $sqlColumn = "SELECT * FROM `COLUMNS` WHERE `TABLE_SCHEMA` = '{$db_name}' AND `TABLE_NAME` = '{$rowTable['TABLE_NAME']}'"; //構建查詢語句
        $queryColumn = mysql_query($sqlColumn); //執行查詢
        while ($rowColumn = mysql_fetch_assoc($queryColumn)) { $table .= '<tr>'; $table .= '<td>' . $rowColumn['COLUMN_NAME'] . '</td>'; $table .= '<td>' . $rowColumn['COLUMN_TYPE'] . '</td>'; $table .= '<td>' . $rowColumn['COLUMN_COMMENT'] . '</td>'; $table .= '<td>&nbsp;</td>'; $table .= '</tr>'; } $i++; } $table .= '</table>'; echo $table; mysql_close($connection);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM