数据库设计的文档,目前用的 PowerDesigner ,但是太重了,而且将这个迁移到 git 之后,也没法对比修改的东西,用什么比较轻便,最好可以 git 能对比出来差异的
1
abcbuzhiming 2017-02-22 23:03:15 +08:00
难道不是直接用建库的 SQL 源码加注释?我觉得这个才是最好用的啊
|
2
nonesuccess 2017-02-23 09:17:33 +08:00 via Android
@abcbuzhiming 如果想表达一些主外键关系呢?
|
3
haython OP @abcbuzhiming 比如某一个表示状态的,用的 tinyint ,本来 1 到 10 表示的各种状态,突然增加了一个 11 ,表示新的状态,数据有 1000 万,你告诉我要改表?
|
4
abcbuzhiming 2017-02-23 10:08:58 +08:00
@nonesuccess sql 里所有的表,过程,函数,约束都是可以用源码表达的,源码加合理的注释我真觉得没有什么不可以表达的, PowerDesigner 这种搞设计图的用来展示的居多,用来做文档并不好用,而且 sql 其实是一种结构化的描述语言,本身就很适合做文档——给程序员看的文档
|
5
abcbuzhiming 2017-02-23 10:11:17 +08:00
@haython 我不懂你的意思,你们的业务变了,需要表示的数据增加新的值,原来的列类型不符合要求了,你不改表怎么办? 1000w 数据很多吗?你见过几亿数据的表,维护时改结构跑几个小时的吗?
|
6
haython OP @abcbuzhiming 大哥,不是类型不符合要求了,是刚开始创建的时候,写的注释只有 1 到 10 的中文解释,现在只是增加了个 11 ,你就要改表,开玩笑呢,你改个表,让网站停半天,仓库停半天,客服停半天
|
7
abcbuzhiming 2017-02-23 13:49:48 +08:00 1
@haython 我看了半天我终于看明白你的意思了,你的意思是从表结构上直接看注释对吗?我说的注释是写在 sql 文件里的,并不要求线上的 mysql 数据库的注释和 sql 源码里的百分百一样,以 sql 源码为准,又不是要你增加一个值,立马就去线上把表结构的注释给改了。再说了,你家的系统任何时候都不停机的吗,这不可能好吧,总有维护的时候
|
8
haython OP @abcbuzhiming 除了 IDC 停了一次电,没有停过机
|
9
nonesuccess 2017-02-23 21:41:16 +08:00 via Android 1
@abcbuzhiming 就是没有合理的自动化展示方式才觉得头疼
|
10
abcbuzhiming 2017-02-24 09:36:52 +08:00
@nonesuccess 我不知道你的公司规模有多大,我的经验,要想可视化文档展示,又要保证展示的东西和实际开发的代码逻辑是一致的,这是要付出代价的,它需要你有专门的人力来维护并沟通一线开发者。项目组不够人多的话你这么玩精力上玩不过来的。
|