iis服务器助手广告
返回顶部
首页 > 资讯 > 数据库 >使用PHP生成MySQL数据字典
  • 296
分享到

使用PHP生成MySQL数据字典

phpmysql 2023-09-11 20:09:40 296人浏览 独家记忆
摘要

一个项目完成之后,按照需求,我需要给这个项目写设计文档,数据库字典。 设计文档到时好说,但是数据库字典可真的是有点吓到我了。 项目开始的比较急,最开始建数据库的时候没有用excel写数据库字典。 这几十张表的数据库,一个一个的写,那真的是酸

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

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

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

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

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

我们有强大的PHP啊。

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

php    $dbhost = '127.0.0.1:3306';                         // Mysql服务器主机地址    $dbuser = 'root';                                 // mysql用户名    $dbpass = 'root';                         // mysql用户名密码    $dbname = "shopxo";    //$mysql = mysqli_connect($dbhost, $dbuser, $dbpass);//这是mysql的链接方法    $mysql = new mysqli("localhost", $dbuser,$dbpass,$dbname, "3306"); //这是mysqli的链接方法    if(! $mysql )    {        die('连接失败: ' . mysqli_error($mysql));    }     $html = expertDirectory($mysql,$dbname);    echo "
";    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

您可能感兴趣的文档:

--结束END--

本文标题: 使用PHP生成MySQL数据字典

本文链接: https://www.lsjlt.com/news/403540.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • 使用PHP生成MySQL数据字典
    一个项目完成之后,按照需求,我需要给这个项目写设计文档,数据库字典。 设计文档到时好说,但是数据库字典可真的是有点吓到我了。 项目开始的比较急,最开始建数据库的时候没有用excel写数据库字典。 这几十张表的数据库,一个一个的写,那真的是酸...
    99+
    2023-09-11
    php mysql
  • Mysql生成数据字典的方法是什么
    生成MySQL数据库的数据字典可以通过以下方法: 使用MySQL Workbench:MySQL Workbench是一个强大的...
    99+
    2024-04-09
    mysql
  • Mysql生成数据字典的原理与实例
    目录生成原理生成实例COLUMNS表字段拓展:附:1分钟导出MySQL的数据字典总结 生成原理 在MySQL中,有个自带的数据库,名为information_schema。...
    99+
    2024-04-02
  • sqlserver表怎么生成数据字典
    在 SQL Server 中生成数据字典可以通过以下步骤实现: 查询表结构信息:使用系统视图或者函数查询表的结构信息,例如查询表名...
    99+
    2024-04-09
    SQLServer
  • 阿里云数据库生成数据字典的方法
    简介: 本文将详细介绍如何使用阿里云数据库工具生成数据字典。包括数据字典的定义,生成数据字典的重要性,以及在阿里云数据库中生成数据字典的具体步骤和方法。数据字典的定义数据字典是一种用于描述数据和数据之间的关系的工具。它通常包含以下信息:数据...
    99+
    2024-01-25
    阿里 字典 数据库
  • 怎么使用python字典生成树状图
    这篇文章主要介绍了怎么使用python字典生成树状图的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用python字典生成树状图文章都会有所收获,下面我们一起来看看吧。python字典生成树状图from&n...
    99+
    2023-07-02
  • 用vbs实现字典生成器
    这篇文章主要讲解了“用vbs实现字典生成器”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“用vbs实现字典生成器”吧!使用方法'use:cscript this.vbs&nb...
    99+
    2023-06-08
  • MySQL如何使用Navicat导出数据字典
    小编给大家分享一下MySQL如何使用Navicat导出数据字典,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!数据字典是一名DBA...
    99+
    2024-04-02
  • Python3匿名函数字典排序、生成式与
    1. 参数匿名函数字典排序 函数的参数: 参数类型:我们经常在看别人的代码中,经常出现def(*args,**kwargs)这样的表现形式; *args tuple(1,) **kwargs dict{"k...
    99+
    2023-01-31
    字典 函数
  • 如何用Navicat导出MySQL的数据字典
    方法如下: 利用mysql的information_schema 库中的COLUMNS表信息来实现 例如需要导出ixinnuo_zxpt库的数据字典信息: 打开Navicat,选择查询-->新建查询:...
    99+
    2024-04-02
  • Mysql中怎么查询数据字典
    Mysql中怎么查询数据字典,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。SELECT     ...
    99+
    2024-04-02
  • 手把手教你使用Navicat生成MySQL测试数据
    目录1.配置测试数据库2.使用Navicat数据生成工具3.操作流程1.设置生成数据的条数2.设置数据的格式3.生成数据4.总结使用Navicat生成mysql测试数据 Navicat版本:16.1.3 场景:因为某些原...
    99+
    2023-05-12
    navicat生成mysql navicat生成mysql测试数据 mysql测试数据生成
  • PHP如何从数字生成单字节字符串
    这篇文章将为大家详细讲解有关PHP如何从数字生成单字节字符串,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP从数字生成单字节字符串 : 要从数字生成单字节字符串,PHP提供了chr()函数。该函数接...
    99+
    2024-04-02
  • 如何在php中使用chr()函数随机生成字符串
    这篇文章给大家介绍如何在php中使用chr()函数随机生成字符串,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1.主要利用了两个函数:chr()mt_rand()2.语法格式:mt_rand() 使用 Mersenne...
    99+
    2023-06-14
  • Python 字典 get()函数使用详解,字典获取值
    「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」:小白零基础《Python入门到精通》 get函数使用...
    99+
    2023-10-20
    python 网络安全 人工智能 机器学习
  • MySQL怎么实现给定数字生成中文数字
    本篇内容主要讲解“MySQL怎么实现给定数字生成中文数字”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL怎么实现给定数字生成中文数字”吧!用MySQL实...
    99+
    2024-04-02
  • 用python生成mysql数据库结构文档
    最近因为项目原因需要编写数据库设计文档,但是由于数据表太多,手动编写耗费的时间太久,所以搞了一个简单的脚本快速生成数据库结构,保存到word文档中。 安装pymysql和docume...
    99+
    2024-04-02
  • 如何使用MySQL进行数据分析和报表生成?
    如何使用MySQL进行数据分析和报表生成MySQL是一种广泛使用的关系型数据库管理系统,用于存储和管理结构化数据。除了作为数据存储和管理工具之外,MySQL还可以用于进行数据分析和报表生成。本文将介绍如何使用MySQL进行数据分析和报表生成...
    99+
    2023-10-22
    数据分析 MySQL 报表生成
  • MySQL中如何使用MDL字典锁
    这篇文章将为大家详细讲解有关MySQL中如何使用MDL字典锁,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 什么是MDL   ...
    99+
    2024-04-02
  • 怎么使用Redis批量生成数据
    这篇文章主要介绍“怎么使用Redis批量生成数据”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用Redis批量生成数据”文章能帮助大家解决问题。Redis自带Debug方法redis提供的de...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作