zoukankan      html  css  js  c++  java
  • 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);

     

    本博客内容全部经过本人亲自测试,转载请说明转载地址
  • 相关阅读:
    io流
    JDBC-java数据库连接
    list接口、set接口、map接口、异常
    集合、迭代器、增强for
    math类和biginteger类
    基本包装类和System类
    正则表达式
    API-Object-equals方法和toString方法 Strinig字符串和StingBuffer类
    匿名对象 内部类 包 访问修饰符 代码块
    final 和 static 关键词
  • 原文地址:https://www.cnblogs.com/xingfupeng/p/8484580.html
Copyright © 2011-2022 走看看