把mysql数据库生成数据字典,直接可用

2014-11-24 15:49:42 · 作者: · 浏览: 0
把mysql 数据库生成数据字典,直接可用
便于查看数据库表、字段,做一个数据字典是很有必要的,下面只需要简单更改下配置就可以用了,样式也是挺好的。
< php  
header('content-type:text/html;charset=utf-8');  
define('DB_HOST','localhost');  
define('DB_USER','root');  
define('DB_PASS','pwd');  
define('DB_NAME','dbname');  
define('DB_PORT',3306);  
define('DB_CHAR','utf8');  
define('APPNAME','');  
$conn=mysql_connect(DB_HOST.':'.DB_PORT,DB_USER,DB_PASS);  
mysql_select_db(DB_NAME);  
mysql_query('set names ' . DB_CHAR);  
$sql="SHOW TABLE STATUS FROM " . DB_NAME;  
$result=mysql_query($sql);  
$array=array();  
while($rows=mysql_fetch_assoc($result)){  
$array[]=$rows;  
}  
// table count  
$tab_count = count($array);  
echo '  
  
  
  
'.APPNAME.'--数据字典  
  
  
  
'.APPNAME.'--数据字典
(注:共'.$tab_count.'张表,按ctrl+F查找关键字)
'."\n"; for($i=0;$i<$tab_count;$i++){ echo '
    '."\n"; echo '
  • '; echo ($i+1).'、表名:[' . $array[$i]['Name'] . '] 注释:' . $array[$i]['Comment']; echo '
  • '."\n"; //查询数据库字段信息 $tab_name = $array[$i]['Name']; $sql_tab='show full fields from `' . $array[$i]['Name'].'`'; $tab_result=mysql_query($sql_tab); $tab_array=array(); while($r=mysql_fetch_assoc($tab_result)){ $tab_array[]=$r; } //show keys $keys_result=mysql_query("show keys from `".$array[$i]['Name'].'`',$conn); $arr_keys=mysql_fetch_array($keys_result); echo '
  • '; echo ''; for($j=0;$j'."\n"; echo ' '."\n"; echo ' '."\n"; echo ' '."\n"; echo ' '."\n"; echo ' '."\n"; echo ' '."\n"; echo ' '."\n"; echo ' '."\n"; } echo '
    字段 类型 为空 额外 默认 整理 备注
    ' . $tab_array[$j]['Field'] . '' . $tab_array[$j]['Type'] . '' . ($key_value!='' $key_value:$tab_array[$j]['Null']) . '' . $tab_array[$j]['Extra'] . '' . $tab_array[$j]['Default'] . '' . $tab_array[$j]['Collation'] . '' . ($key_value!='' $key_name:$tab_array[$j]['Comment']) . '
  • '."\n"; echo '
'."\n"; } echo ''."\n"; echo ''."\n";