php源码分享之生成mysql数据字典
|
Code: /** * 生成mysql数据字典 */ //配置数据库 $dbserver = "127.0.0.1"; $dbusername = "root"; $dbpassword = "xxxxxx"; $database = "table_name"; //其他配置 $title = '数据字典'; $pdo=new PDO("mysql:host=".$dbserver.";dbname=".$database,$dbusername,$dbpassword); $pdo->query('SET NAMES utf8'); $table_result=$pdo->query('show tables'); $arr=$table_result->fetchAll(PDO::FETCH_ASSOC); //取得所有的表名 foreach ($arr as $val){ $tables[]['TABLE_NAME'] =$val['Tables_in_table_name']; } //循环取得所有表的备注及表中列消息 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 = $pdo->query($sql); $t=$table_result->fetchAll(PDO::FETCH_ASSOC); foreach($t as $v) { $tables[$k]['TABLE_COMMENT'] = $v['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 = $pdo->query($sql); $t=$field_result->fetchAll(PDO::FETCH_ASSOC); foreach ($t as $v) { $fields[] = $v; } $tables[$k]['COLUMN'] = $fields; } $html = ''; //循环所有表 foreach ($tables AS $k=>$v) { //$html .= ' '. $v['TABLE_COMMENT'] . '';$html .= '
} //输出 echo ' echo ' '.$title.'';echo $html; echo ''; (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
