我的编程空间,编程开发者的网络收藏夹
学习永远不晚

使用PHP生成MySQL数据字典

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

使用PHP生成MySQL数据字典

一个项目完成之后,按照需求,我需要给这个项目写设计文档,数据库字典。

设计文档到时好说,但是数据库字典可真的是有点吓到我了。

项目开始的比较急,最开始建数据库的时候没有用excel写数据库字典。

这几十张表的数据库,一个一个的写,那真的是酸爽。

但是,这一切好像又都不是事。

我们有强大的PHP啊。

下面给大家分享一个自己写的函数:使用PHP生成mysql字典。

";    var_dump($html);           function expertDirectory($mysql,$dbname)    {        mysqli_query($mysql, "set names utf8");        $table_result = $mysql->query('show tables');               $no_show_table = array();    //不需要显示的表        $no_show_field = array();   //不需要显示的字段               //取得所有的表名        while($row = mysqli_fetch_array($table_result)){            if(!in_array($row[0],$no_show_table)){            $tables[]['TABLE_NAME'] = $row[0];          }        }        //替换所以表的表前缀        // if($_GET['prefix']){        //  $prefix = 'sent_';        //  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 = '{$dbname}'";            $table_result = $mysql->query($sql);            while ($t = mysqli_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 = '{$dbname}'";                   $fields = array();            $field_result = $mysql->query($sql);            while ($t = mysqli_fetch_array($field_result) ) {                $fields[] = $t;            }            $tables[$k]['COLUMN'] = $fields;        }        // $mysql->close($mysql_conn);        $html = '';        //循环所有表        foreach ($tables as $k=>$v) {            $html .= '  ' . ($k + 1) . '、' . $v['TABLE_COMMENT'] .'  ('. $v['TABLE_NAME']. ')'."";            $html .= '  '."";            $html .= '    '."";          $html .= '      '."";          $html .= '        字段名'."";          $html .= '        数据类型'."";          $html .= '        默认值'."";          $html .= '        允许非空'."";          $html .= '        自动递增'."";          $html .= '        备注'."";          $html .= '      '."";                   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 .= '      '."";              $html .= '        ' . $f['COLUMN_NAME'] . ''."";              $html .= '        ' . $f['COLUMN_TYPE'] . ''."";              $html .= '        ' . $f['COLUMN_DEFAULT'] . ''."";              $html .= '        ' . $f['IS_NULLABLE'] . ''."";              $html .= '        ' . ($f['EXTRA']=='auto_increment'?'是':' ') . ''."";              $html .= '        ' . $f['COLUMN_COMMENT'] . ''."";              $html .= '      '."";            }            }            $html .= '    '."";          $html .= '  '."";        }        return $html;    }

其实这只是一个简单的小函数,平时用到的几率也不大。

但是,在需要的时候,他会给你省很多力气。

有好的建议,请在下方输入你的评论。

来源地址:https://blog.csdn.net/qq_39708228/article/details/132324703

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

使用PHP生成MySQL数据字典

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

使用SQL生成指定数据库的数据字典(MSSQL)

USE DBNAME --指定要生成数据字典的数据库GOSELECT表名=CASEWHEN a.colorder= 1 THENd.name ELSE "" END, 表说明=CASEWHEN a.colorder= 1 THENisnull( f.value
2014-09-07

Mysql生成数据字典的方法是什么

生成MySQL数据库的数据字典可以通过以下方法:使用MySQL Workbench:MySQL Workbench是一个强大的MySQL数据库管理工具,可以通过它生成数据库文档。在MySQL Workbench中连接到数据库,选择要生成数据
Mysql生成数据字典的方法是什么
2024-04-09

sqlserver表怎么生成数据字典

在 SQL Server 中生成数据字典可以通过以下步骤实现:查询表结构信息:使用系统视图或者函数查询表的结构信息,例如查询表名、列名、数据类型、长度、约束等信息。SELECT TABLE_NAME,COLUMN_NAME,DATA_TYP
sqlserver表怎么生成数据字典
2024-04-09

阿里云数据库生成数据字典的方法

简介:本文将详细介绍如何使用阿里云数据库工具生成数据字典。包括数据字典的定义,生成数据字典的重要性,以及在阿里云数据库中生成数据字典的具体步骤和方法。数据字典的定义数据字典是一种用于描述数据和数据之间的关系的工具。它通常包含以下信息:数据类型、数据长度、数据范围、数据的约束条件、数据的默认值、数据的参考关系等。数据字典
阿里云数据库生成数据字典的方法
2024-01-25

怎么使用python字典生成树状图

这篇文章主要介绍了怎么使用python字典生成树状图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用python字典生成树状图文章都会有所收获,下面我们一起来看看吧。python字典生成树状图from g
2023-07-02

怎么使用Navicat生成MySQL测试数据

使用Navicat生成MySQL测试数据:连接数据库,打开表设计器,启用“数据生成”选项卡。设置行数、字段、数据类型和规则。预览生成的数据,满意后开始生成。对于“导入数据”类型,导入文件并指定目标表。
怎么使用Navicat生成MySQL测试数据
2024-04-10

手把手教你使用Navicat生成MySQL测试数据

目录1.配置测试数据库2.使用Navicat数据生成工具3.操作流程1.设置生成数据的条数2.设置数据的格式3.生成数据4.总结使用Navicat生成mysql测试数据Navicat版本:16.1.3www.cppcns.com场景:因
2023-05-12

如何在php中使用chr()函数随机生成字符串

这篇文章给大家介绍如何在php中使用chr()函数随机生成字符串,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1.主要利用了两个函数:chr()mt_rand()2.语法格式:mt_rand() 使用 Mersenne
2023-06-14

使用 Python 去重 PHP 数组并返回新字典

python 去重 php 数组的步骤:使用 json.loads() 从 json 字符串加载 php 数组。使用 set() 去重数组中的字典,并将重复字典的哈希值作为键。使用字典推导将集合转换为字典。返回去重后的新字典。使用 Pyth
使用 Python 去重 PHP 数组并返回新字典
2024-04-28

如何使用MySQL进行数据分析和报表生成?

如何使用MySQL进行数据分析和报表生成MySQL是一种广泛使用的关系型数据库管理系统,用于存储和管理结构化数据。除了作为数据存储和管理工具之外,MySQL还可以用于进行数据分析和报表生成。本文将介绍如何使用MySQL进行数据分析和报表生成
2023-10-22

Android中生成、使用Json数据实例

1、Json的制作代码如下: package com.example.usingjson2; import org.json.JSONException; import org.json.JSONObject; im
2022-06-06

怎么使用Redis批量生成数据

这篇文章主要介绍“怎么使用Redis批量生成数据”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用Redis批量生成数据”文章能帮助大家解决问题。Redis自带Debug方法redis提供的de
2023-06-30

编程热搜

目录