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