php生成mysql数据字典

有时候我们拿到别人的数据库,却没有数据字典,这个php小程序帮你轻松解决。

代码是网上找到的,当然,这段代码也仅仅是生成了数据字典,视图,存储过程等等是木有的哦。

<?php/** * 生成mysql数据字典 *///配置数据库$dbserver   = "127.0.0.1";$dbusername = "root";$dbpassword = "";$database      = "";//其他配置$title = "数据字典";$mysql_conn = @mysql_connect("$dbserver", "$dbusername", "$dbpassword") or die("Mysql connect is error.");mysql_select_db($database, $mysql_conn);mysql_query("SET NAMES utf8", $mysql_conn);$table_result = mysql_query("show tables", $mysql_conn);//取得所有的表名while ($row = mysql_fetch_array($table_result)) {    $tables[]["TABLE_NAME"] = $row[0];}//循环取得所有表的备注及表中列消息foreach ($tables AS $k=>$v) {    $sql  = "SELECT * FROM ";    $sql .= "INFORMATION_SCHEMA.TABLES ";    $sql .= "WHERE ";    $sql .= "table_name = "{$v["TABLE_NAME"]}"  AND table_schema = "{$database}"";    $table_result = mysql_query($sql, $mysql_conn);    while ($t = mysql_fetch_array($table_result) ) {        $tables[$k]["TABLE_COMMENT"] = $t["TABLE_COMMENT"];    }    $sql  = "SELECT * FROM ";    $sql .= "INFORMATION_SCHEMA.COLUMNS ";    $sql .= "WHERE ";    $sql .= "table_name = "{$v["TABLE_NAME"]}" AND table_schema = "{$database}"";    $fields = array();    $field_result = mysql_query($sql, $mysql_conn);    while ($t = mysql_fetch_array($field_result) ) {        $fields[] = $t;    }    $tables[$k]["COLUMN"] = $fields;}mysql_close($mysql_conn);$html = "";//循环所有表foreach ($tables AS $k=>$v) {    //$html .= "

". $v["TABLE_COMMENT"] . "

"; $html .= ""; $html .= ""; $html .= ""; $html .= ""; foreach ($v["COLUMN"] AS $f) { $html .= ""; $html .= ""; $html .= ""; $html .= ""; $html .= ""; $html .= ""; $html .= ""; } $html .= "
" . $v["TABLE_NAME"] ." ". $v["TABLE_COMMENT"]. "
字段名数据类型默认值 允许非空 自动递增备注
" . $f["COLUMN_NAME"] . "" . $f["COLUMN_TYPE"] . " " . $f["COLUMN_DEFAULT"] . " " . $f["IS_NULLABLE"] . "" . ($f["EXTRA"]=="auto_increment"?"是":" ") . " " . $f["COLUMN_COMMENT"] . "

";}//输出echo "<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />".$title."<style>body,td,th {font-family:"宋体"; font-size:12px;}table{border-collapse:collapse;border:1px solid #CCC;background:#efefef;}table caption{text-align:left; background-color:#fff; line-height:2em; font-size:14px; font-weight:bold; }table th{text-align:left; font-weight:bold;height:26px; line-height:26px; font-size:12px; border:1px solid #CCC;}table td{height:20px; font-size:12px; border:1px solid #CCC;background-color:#fff;}.c1{ width: 120px;}.c2{ width: 120px;}.c3{ width: 70px;}.c4{ width: 80px;}.c5{ width: 80px;}.c6{ width: 270px;}</style><body>";echo "

".$title."

";echo $html;echo "";?>


运行后的结果:





郑重声明:本文版权包含图片归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们(delete@yzlfxy.com)修改或删除,多谢。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

留言与评论(共有 0 条评论)
昵称:
匿名发表
   
验证码: