高效工作之软件系统——数据结构登记表

数据结构模板

开发完软件系统后,往往需要进行一些登记——《软件系统数据结构登记表》 

然后软件项目有60个表左右,难道需要手动录入,那肯定不可能

工欲善其事必先利其器!go。。。同事给的模板是下图

效果图

于是想到 之前使用数据库工具,执行sql 操作,查询过表结构的语句。

废话少说,上效果图

上面这个表结构数据,可以直接复制到excel,搞定完事happy了? 

这里我们还有一点瑕疵,需要处理一下

数据类型和长度放一块

模板的数据类型和长度,是在一块的,如下图 CHAR(8)

而我们查询出来的,数据结构的数据类型和长度,是分开的。

经过一番尝试,用sql试了下,没找到好的方法,这里有谁有好的方法,欢迎留言共同进步!

接下来,我的实现方式,是对 execl 进行了操作

最简洁的积累,是从一步一步开始,于是第1步,先按分开的展示

再搜索研究了一下 exel 公式,使用 excel 公式完成合并,这个如果不熟悉也稍微有点麻烦,

我也是找了几篇文章,然后看了下 excel 的相关公式语法 拼凑的,没办法自己开发维护的系统,

数据结构相关文档,还是得自己来弄一下,这方面还是挺乐意的。

多动脑尝试,很多问题都可以很快得到解决!

新插入1列,然后使用的公式是

=H5&"("&I5&")"

出来1个以后,然后进行依次进行拖拽即可!

去掉无数据长度的小括号

现在还有一个问题,就是有些类型,没有数据长度,它单单展示的是一个小括号

你会发现,直接上去删掉,是有问题的。因为我们使用了 excel 公式,它是有关联行的。

那么怎么办呢?你有你的张良计 我有我的过墙梯!

我们只需,按住 sfift 键,选中头-选中尾,也就是选中此列,然后复制,

新加一列,点击选中,然后右键,选粘贴为数值。即数据复制过去了,而且没有数据关联了

接下来,很简单,点击  查找 下拉框,选中替换,把括号 () 全部替换为空,即可搞定

是不是很简单、高效,相比于 60 张表,你按照模板,一个个去复制粘贴,无法比拟!!!

具体 sql 代码

对了sql 代码,忘记贴了,这里贴一下。使用的数据库客户端工具是 navicat,

大家根据需求,对语句进行修改即可!

SELECT
		(SELECT TABLE_COMMENT 
			FROM INFORMATION_SCHEMA.TABLES 
			WHERE TABLE_SCHEMA = 'runnergo' 
			AND TABLE_NAME = 'variable_import') 表中文名称,
    table_name 表英文名称,
		
		COLUMN_COMMENT 数据项中文名称, 
    COLUMN_NAME 数据项英文名称,
--     COLUMN_TYPE 数据类型,
    DATA_TYPE 数据类型,
    CHARACTER_MAXIMUM_LENGTH 长度,
    COLUMN_KEY 主键,
		(
		  SELECT CONSTRAINT_NAME
      FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
      WHERE REFERENCED_TABLE_NAME = 'variable_import' AND REFERENCED_COLUMN_NAME = COLUMN_NAME
		)  外键,
    IS_NULLABLE 是否为空
--     COLUMN_DEFAULT 默认值,
FROM
information_schema.`COLUMNS`
WHERE
-- 数据库名
TABLE_SCHEMA='xxx'     
AND
-- 表名
table_name='variable_import'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/613192.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RustDesk 自建服务器部署和使用教程

RustDesk 是一个强大的开源远程桌面软件,是中国开发者的作品,它使用 Rust 编程语言构建,提供安全、高效、跨平台的远程访问体验。可以说是目前全球最火的开源远程桌面软件了,GitHub 星星数量达到了惊人的 64k! 与 Team…

2024数维杯B题详细思路代码数学建模高质量保姆级

2024年第九届数维杯大学生数学建模挑战赛题目 B 题 生物质和煤共热解问题的研究 (1)基于附件一,请分析正己烷不溶物(INS)对热解产率(主要 考虑焦油产率、水产率、焦渣产率)是否产生显著影响?并利用图像 加…

pygame学习--精灵组、碰撞检测、精灵更新

pygame学习--精灵组、碰撞检测、精灵更新 一.效果二.代码 通过pygame库,模拟种群的分化 1.X从左往右移动,表示年龄的增加;Y坐标表示阶层 2.随着X坐标不断增大,圆逐渐增大,颜色也加深 3.精灵越多,碰撞后死亡的概率越大,诞生新精灵的概率越小 4.每个精灵都有随机的运动速度及Y坐标…

OmniPlan Pro 4 for Mac中文激活版:项目管理的新选择

OmniPlan Pro 4 for Mac作为一款专为Mac用户设计的项目管理软件,为用户提供了全新的项目管理体验。其直观易用的界面和强大的功能特性,使用户能够轻松上手并快速掌握项目管理要点。 首先,OmniPlan Pro 4 for Mac支持自定义视图,用…

673. 最长递增子序列的个数(Leetcode)

文章目录 前言一、题目描述二、解题步骤1.小demo介绍2.动态规划1.状态表示2.状态转移方程3.初始化4.填表顺序5.返回值 三、代码编写总结 前言 在本篇文章中,我们将会讲到leetcode中673. 最长递增子序列的个数,我们将会用动态规划方式解决这道问题&#…

【JVM基础篇】JVM入门介绍

JVM入门介绍 为什么学习JVM 岗位要求 解决工作中遇到的问题 性能调优 真实案例 导出超大文件,系统崩溃从数据库中查询超大量数据出错消费者消费来不及导致系统崩溃Mq消息队列接受消息导致的内存泄漏业务高峰期系统失去响应 初识JVM 什么是JVM? JV…

Vue路由开启步骤

1.在控制台输入命令 //控制台下载安装npm add vue-router3.6.5 2.在main.js下导入并注册组件 import Vue from vue import App from ./App.vue//控制台下载安装npm add vue-router3.6.5 //导入 import VueRouter from "vue-router";//注册 Vue.use(VueRouter) con…

鸿蒙HarmonyOS开发:List列表组件的使用详解及案例演示(二)

文章目录 一、List组件简介1、List组件2、ListItem组件3、ListItemGroup组件 二、使用ForEach渲染列表三、设置列表分割线四、设置List排列方向五、索引值计算规则六、示例演示1、AlphabetIndexer组件2、代码3、效果 一、List组件简介 在我们常用的手机应用中,经常…

uni-app(三):离线打包与插件引用(Android)

离线打包与插件引用 1.下载Android离线SDK2.使用Android Studio打开离线打包项目并更新Gradle3.解决报错4.构建5.配置AppKeya.查看证书b.申请AppKeyc.配置AppKey 6.生成本地打包App资源7.拷贝App资源到Android项目中8.修改 appid9.修改Android项目配置文件10.下载证书并配置11.…

5.9网络协议

由网卡发送数据通过网线进行发送,当网卡接收到信号以后将数据传给内核数据区,然后由操作系统交给相应的进程。 将数据进行发送的时候需要借助于网线实现,这个时候会出现当传输的数据比较远的时候就借助于中继器将信号进行再生扩大&#xff0…

C脚本实现WIncc模拟量趋势窗口弹出

文章目录 前言一、步骤及解析二、运行画面演示三、总结 前言 本文给出了一种基于C脚本实现点击输入输出域对象,弹出对应模拟量趋势窗口的方法。 一、步骤及解析 在Wincc变量管理中,添加两个变量; 示例如下: 将以上两个变量添加到…

小众行业风口:Q1季度擦窗机器人行业线上市场销售数据分析

今天给大家分享一个2024年的小众行业增长风口——擦窗机器人。 作为家居自动化里的重要一员,擦窗机器人可以简称为擦窗神器,是为了解决大户型家庭的外窗清洁痛点而存在。而目前,擦窗机器人行业正在走向成熟,且市场需求量居高不下…

抖店选品都怎么选品?什么样的产品更吸引人,更具有购买力?

大家好,我是电商花花。 抖店选品一直都是我们无货源商家的核心问题,不管是出单、还是爆单,店铺想要有销量的前提下都是选品。 很多人一上来就是就是选品,没有选品经验还瞎选品,结果到最后选了一堆出单的产品&#xf…

[蓝桥杯]真题讲解:AB路线(BFS+分层图)

[蓝桥杯]真题讲解&#xff1a;AB路线&#xff08;BFS分层图&#xff09; 一、视频讲解二、正解代码1、C2、python33、Java 一、视频讲解 [蓝桥杯]真题讲解&#xff1a;AB路线&#xff08;BFS分层图&#xff09; 二、正解代码 1、C #include<bits/stdc.h> #define INF …

BGP(border gateway protocol)边界网关协议初识篇

BGP它是一种路径矢量协议&#xff0c;用于决定数据包在互联网中的最佳路径。 1、工作原理&#xff1a; 自治系统&#xff08;AS&#xff09;间路由: BGP主要用于连接不同自治系统之间的路由器&#xff0c;其中每个自治系统&#xff08;AS&#xff09;代表一组具有共同路由的网…

Python爬虫 【1】 —— 爬虫基础

爬虫基本套路 基本流程 目标数据来源地址结构分析 具体数据在哪&#xff08;网站 还是APP&#xff09;如何展示的数据、 实现构思操刀编码 基本手段 破解请求限制 请求头设置&#xff0c;如&#xff1a;useragent为有效客户端控制请求频率&#xff08;根据实际情境&#xff09…

Metes and Bounds Pro for Mac 激活版:精准数据转换与绘图利器

Metes and Bounds Pro for Mac是一款专为土地测量和边界划定而设计的专业软件&#xff0c;为Mac用户提供了高效、精确的测量工具。其核心功能在于其全面的测量工具和简便的操作流程&#xff0c;能够满足在土地管理、房地产开发、农业规划等领域的多样化需求。 这款软件集合了距…

C++学习第二十八课:C++ 中的智能指针详解

在 C 中&#xff0c;内存管理是每个程序员都需要面对的问题。在处理动态分配的内存时&#xff0c;如果忘记释放内存&#xff0c;可能会导致内存泄漏。为了解决这个问题&#xff0c;C11 引入了智能指针的概念。本文将详细介绍 C 中使用智能指针的方法&#xff0c;并结合实际案例…

天龙怀旧游戏python脚本

设置图&#xff1a; 游戏窗口最大化。 海贼洞这里定位你要回点的定位。 运行bat就行&#xff0c;脚本出错了还是会重新运行脚本&#xff0c;运行自动启动&#xff0c;end暂停脚本&#xff0c;home重新启动脚本 1. 我常用的是内挂回点脚本&#xff0c; 下面都是前台脚本&…

(三)Appdesigner-界面转换及数据导入和保存

提示&#xff1a;文章为系列文章&#xff0c;可以在对应学习专栏里面进行学习。对应资源已上传 目录 前言 一、Appdesigner是什么&#xff1f; 二、界面切换 三、数据导入及保存 &#xff08;一&#xff09;数据导入 &#xff08;二&#xff09;数据保存 总结 前言 Appd…