1、phpmyadmin中自带的数据字典导出

2、利用下面的脚本:

<?php
/**
* 生成mysql数据字典
*/
header("Content-type: text/html; charset=utf-8");
//配置数据库
$dbserver = "localhost";
$dbusername = "root";
$dbpassword = "123456";
$database = "store"; //其他配置
$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); $no_show_table = array(); //不需要显示的表
$no_show_field = array(); //不需要显示的字段 //取得所有的表名
while ($row = mysql_fetch_array($table_result)) {
if (!in_array($row[0], $no_show_table)) {
$tables[]['TABLE_NAME'] = $row[0];
}
}
//替换所以表的表前缀
if (@$_GET['prefix']) {
$prefix = 'czzj';
foreach ($tables as $key => $val) {
$tableName = $val['TABLE_NAME'];
$string = explode('_', $tableName);
if ($string[0] != $prefix) {
$string[0] = $prefix;
$newTableName = implode('_', $string);
mysql_query('rename table '.$tableName.' TO '.$newTableName);
}
}
echo "替换成功!";
exit();
} //循环取得所有表的备注及表中列消息
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 .= ' <h3>' . ($k + 1) . '、' . $v['TABLE_COMMENT'] .' ('. $v['TABLE_NAME']. ')</h3>'."\n";
$html .= ' <table border="1" cellspacing="0" cellpadding="0" width="100%">'."\n";
$html .= ' <tbody>'."\n";
$html .= ' <tr>'."\n";
$html .= ' <th>字段名</th>'."\n";
$html .= ' <th>数据类型</th>'."\n";
$html .= ' <th>默认值</th>'."\n";
$html .= ' <th>允许非空</th>'."\n";
$html .= ' <th>自动递增</th>'."\n";
$html .= ' <th>备注</th>'."\n";
$html .= ' </tr>'."\n"; foreach ($v['COLUMN'] as $f) {
if (@!is_array($no_show_field[$v['TABLE_NAME']])) {
$no_show_field[$v['TABLE_NAME']] = array();
}
if (!in_array($f['COLUMN_NAME'], $no_show_field[$v['TABLE_NAME']])) {
$html .= ' <tr>'."\n";
$html .= ' <td class="c1">' . $f['COLUMN_NAME'] . '</td>'."\n";
$html .= ' <td class="c2">' . $f['COLUMN_TYPE'] . '</td>'."\n";
$html .= ' <td class="c3">' . $f['COLUMN_DEFAULT'] . '</td>'."\n";
$html .= ' <td class="c4">' . $f['IS_NULLABLE'] . '</td>'."\n";
$html .= ' <td class="c5">' . ($f['EXTRA']=='auto_increment'?'是':'&nbsp;') . '</td>'."\n";
$html .= ' <td class="c6">' . $f['COLUMN_COMMENT'] . '</td>'."\n";
$html .= ' </tr>'."\n";
}
}
$html .= ' </tbody>'."\n";
$html .= ' </table>'."\n";
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>商城管理后台数据字典</title>
<meta name="generator" content="ThinkDb V1.0" />
<meta name="author" content="科技有限公司http://www.tensent.cn" />
<meta name="copyright" content="2008-2014 Tensent Inc." />
<style>
body, td, th { font-family: "微软雅黑"; font-size: 14px; }
.warp{margin:auto; width:900px;}
.warp h3{margin:0px; padding:0px; line-height:30px; margin-top:10px;}
table { border-collapse: collapse; border: 1px solid #CCC; background: #efefef; }
table th { text-align: left; font-weight: bold; height: 26px; line-height: 26px; font-size: 14px; text-align:center; border: 1px solid #CCC; padding:5px;}
table td { height: 20px; font-size: 14px; border: 1px solid #CCC; background-color: #fff; padding:5px;}
.c1 { width: 120px; }
.c2 { width: 120px; }
.c3 { width: 150px; }
.c4 { width: 80px; text-align:center;}
.c5 { width: 80px; text-align:center;}
.c6 { width: 270px; }
</style>
</head>
<body>
<div class="warp">
<h1 style="text-align:center;">商城管理后台数据字典</h1>
<?php echo $html; ?>
</div>
</body>
</html>

Mysql数据字典导出的更多相关文章

  1. mysql快速导出数据库ER图和数据字典(附navicat11安装教程及资源)

    ♣ mysql使用navicat11快速导出数据库ER图 ♣ mysql使用navicat11快速导出数据库数据字典 ♣ navicat11 for mysql (这里是mysql5.7.12)专业版 ...

  2. PHP导出MySQL数据字典 Summer-Mysql-Dic

    2017年11月9日09:30:29 用 PHP 写的一个类文件, 用来导出MySQL数据字典 导出表信息; 字段信息, 索引信息 可以导出浏览器适用的样式, 也可以导出word文档 建议上线前用这个 ...

  3. Mysql数据库导出数据字典文档Word或者HTML的3个工具

    最近需要将Mysql的数据库导出一份Word的文档出来,本文记录调研后几个可用的工具和方法: 阿里云DMS工具导出 适用于存储在阿里云RDS服务中的Mysql数据库 导出格式支持:Word.Excel ...

  4. 使用 PowerDesigner 和 PDMReader 逆向生成 MySQL 数据字典

    下面提到的软件大家可以在下面的链接下载. 大家可以参考下面的操作录制视频来完成相关的操作. 使用 PowerDesigner 和 PDMReader 逆向生成 MySQL 数据字典.wmv_免费高速下 ...

  5. mysql数据库导出模型到powerdesigner,PDM图形窗口中显示数据列的中文注释

    1,mysql数据库导出模型到powerdesigner 2,CRL+Shift+X 3,复制以下内容,执行 '******************************************** ...

  6. mysql导入导出数据中文乱码解决方法小结

    linux系统中 linux默认的是utf8编码,而windows是gbk编码,所以会出现上面的乱码问题. 解决mysql导入导出数据乱码问题 首先要做的是要确定你导出数据的编码格式,使用mysqld ...

  7. mysql 数据导出 常用总结

    mysqldump -t 数据库名 -uroot -p > xxx.sql 总结:上面的导出形式默认表结构和数据: -d表结构; -t数据;   -c, --complete-insert使用完 ...

  8. [MySQL]导入导出

    [MySQL]导入导出 一 导入文本数据 1)mysql->load data infile 数据文件c:/mytable.txt 如下:(每一行为一条记录,记录的字段间用tab隔开,最后一个字 ...

  9. MYSQL导入导出.sql文件

    MYSQL导入导出.sql文件   一.MYSQL的命令行模式的设置:桌面->我的电脑->属性->环境变量->新建->PATH=“:path\mysql\bin;”其中p ...

随机推荐

  1. Python-王者荣耀自动刷金币+爬取英雄信息+图片

    前提:本文主要功能是 1.用python代刷王者荣耀金币 2.爬取英雄信息 3.爬取王者荣耀图片之类的. (全部免费附加源代码) 思路:第一个功能是在基于去年自动刷跳一跳python代码上面弄的,思路 ...

  2. Django模板语言

    day66 2018-05-08 1. 内容回顾 1. 模板系统(字符串替换) 1. 语法 1. 变量相关: {{ name }},{{name|length}},{{name|default:&qu ...

  3. (转)Extracting knowledge from knowledge graphs using Facebook Pytorch BigGraph.

    Extracting knowledge from knowledge graphs using Facebook Pytorch BigGraph 2019-04-27 09:33:58 This ...

  4. windows服务安装,卸载

    首先管理员身份进入cmd cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ 进入C:\Windows\Microsoft.NET\Framewor ...

  5. Tomcat 提示 HTTP Status 500 – Internal Server Error

    错误信息: HTTP Status 500 – Internal Server Error Type Exception Report Message Error instantiating serv ...

  6. P2170 选学霸

    传送门 思路: ① 可以把每个学生都看作点,而那些实力相同的学生就处在同一个连通块内,因为连通块内的同学要么都取,要么不取,所以可以将连通块缩成一个点.只需用并查集维护每个连通块的大小. ② 接着采取 ...

  7. vue中前端处理token过期的方法与axios请求拦截处理

    在处理token过期的这个问题上困扰了我很久,现在终于解决的了,所以分享出来给大家,希望能够对大家有所帮助. 首先,当然是路由进行拦截,路由拦截当然是在beforeEach中了: router.bef ...

  8. web 后台返回json格式数据的方式(status 406)

    1.在类上使用注解 @RestController public class HttpComentInterface { } 2.在方法是使用注解  @ResponseBody @RequestMap ...

  9. webpack学习笔记 (三) webpack-dev-server插件和HotModuleReplacementPlugin插件使用

    webpack-dev-server插件 webpack-dev-server是webpack官方提供的一个小型Express服务器.使用它可以为webpack打包生成的资源文件提供web服务. we ...

  10. 【Code Tools】Java微基准测试工具JMH之高级篇

    一.IntelliJ IDEA JMH Plugin 这是一个插件,允许您以与JUnit相同的方式使用JMH.以下是已经实现的功能: 1.@Benchmark method generation(自动 ...