码迷,mamicode.com
首页 > 数据库 > 详细

PHP MYSQL数据字典

时间:2015-10-09 15:06:37      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:

<?php
$dbserver = "localhost";
    $dbusername="root";
    $dbpassword="root";
    $title = ‘数据字典‘;
    if(!isset($_GET[‘db‘])){
        $database = "mydb";
    }else{
        $database = $_GET[‘db‘];
    }

    $mysql_conn = @mysql_connect("{$dbserver}","{$dbusername}","{$dbpassword}") or die("Mysql connect is error.");
    
    mysql_select_db($database,$mysql_conn);
    $result = mysql_query(‘show tables‘,$mysql_conn);
    mysql_query(‘SET NAME UTF8‘,$mysql_conn);
    //取得所有表名
    while($row = mysql_fetch_array($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 .=‘<table border="1" cellspacing="0" cellpadding="0" align="center">‘;
        $html .=‘<caption>‘.$v[‘TABLE_NAME‘] .‘ ‘.$v[‘TABLE_COMMENT‘] .‘</caption>‘;
        $html .=‘<tbody><tr><th>字段名</th><th>数据类型</th><th>默认值</th><th>允许非空</th><th>自动递增</th><th>备注</th></tr>‘;
        $html .=‘‘;
        
        foreach($v[‘COLUMN‘] AS $f){
            $html .=‘<td class="c1">‘.$f[‘COLUMN_NAME‘].‘</td>‘;
            $html .=‘<td class="c2">‘.$f[‘COLUMN_TYPE‘].‘</td>‘;
            $html .=‘<td class="c3">‘.$f[‘COLUMN_DEFAULT‘].‘</td>‘;
            $html .=‘<td class="c4">‘.$f[‘IS_NULLABLE‘].‘</td>‘;
            $html .=‘<td class="c5">‘.($f[‘EXTRA‘]==‘auto_increment‘?‘是‘:‘ ‘).‘</td>‘;
            $html .=‘<td class="c6">‘.$f[‘COLUMN_COMMENT‘].‘</td>‘;
            $html .= ‘</tr>‘;
        }
        $html .=‘</tbody></table></p>‘;
    }
    echo<html>
            <meta charset="gbk">
            <title>自动生成数据字典</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 ‘<h1 style="text-align:center;">‘.$title.‘</h1>‘;
    echo $html;
    echo ‘</body></html>‘;

?>

 

PHP MYSQL数据字典

标签:

原文地址:http://www.cnblogs.com/boystar/p/4863912.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!