回答

收藏

如何记录数据库

技术问答 技术问答 100 人阅读 | 0 人回复 | 2023-09-13

我已经开始在一个拥有数以百计的表和视图的数据库的地方工作,所有这些表和视图都具有隐秘的名称,只有很少的元音,并且没有文档。它们也不允许对数据库架构进行无谓的更改,我也不能触摸任何数据库,除非要在我自己的计算机上进行测试(该数据库会被删除并定期重新创建),因此我无法添加对任何人都有用的注释。
+ O: d+ a2 ~  y. a1 a& i我尝试使用“- j) @7 b0 g/ ?$ _/ S
Toad”创建一个ER图,但是连续运行48小时后,它仍然看不到任何可见的东西,我需要我的电脑。我正在与其他一些新员工交谈,我们都建议,每当我们困惑某个特定表或其某些列的含义时,都应在开发人员Wiki中对其进行更新。
3 h7 h" z" R7 f7 k7 L' c  e那么,执行此操作的好方法是什么?只是列出表/视图及其列,并在进行时将其填写?我要使用的基本工具是Toad,Oracle的“ SQL! u8 s0 x5 ?& z+ r# c0 p7 `
Developer”,MS Office和Visio。: s& o. ]. I+ B; P8 h; r2 u$ ]
               
7 E2 N$ e; u' K. _" C& B$ K解决方案:
+ g! F8 y8 i# _  G% q2 n               
# V! o6 N( A. M9 E
. P, \" _- `1 L4 a- _! X; u; T' X! y( F  Z. X
                以我的经验,ER(或UML)图并不是最有用的工件-拥有大量的表,图(尤其是反向工程图)通常是一个大杂乱无章的混乱,没人能从中学到任何东西。
/ D/ w' K; [' v' M为了我的钱,一些良好的可读性文档(也许在系统的较小部分以图表的形式进行补充)将为您带来最大的收益。对于每个表,这将包括:7 W8 w, v; I( i  W3 A2 H) q/ Z
该表的含义及其功能使用方式的描述(在UI中等)
4 N1 l/ A7 Z. o4 V3 J! {* a( D每个属性含义(如果不明显)的描述
4 T1 s! V: ]( v' E该表与其他人之间的关系(外键)的解释,反之亦然
! t0 |, c! `0 }( p附加约束和/或触发器的说明
8 U: o7 m1 c: }* ~  G% W7 F如果还没有很好的记录,对与表格相关的主要视图和过程的附加说明2 l4 h4 b8 n" W! H: Q

0 I( O6 E! f  I2 K" k5 [6 @对于上述所有内容,请不要出于文档目的而进行文档记录-
* }8 c# _+ w& u$ t重述显而易见的文档只会妨碍人们的操作。相反,请专注于起初使您感到困惑的内容,并花几分钟编写真正清晰,简洁的说明。这将帮助您仔细考虑,并且将 极大地' ?# K% Y" U4 ?% V; A* M
帮助其他首次遇到这些表的开发人员。7 s. u2 X3 U% W% T) w
正如其他人提到的那样,有许多工具可以帮助您管理此问题,例如Enterprise1 m: L: Y3 O" y1 E( e5 f  t
Architect,Red Gate SQL Doc以及各种供应商提供的内置工具。但是,尽管工具支持很有帮助(在更大的数据库中甚至是至关重要的),但努力. i. V" n9 k0 S
理解 和 解释
" F$ e( B+ H0 L* Q8 Q9 A数据库的概念模型才是真正的胜利。从这个角度来看,您甚至可以在一个文本文件中进行操作(尽管以Wiki形式进行操作可以使几个人进行协作,以逐步将其添加到该文档中-# x. [. s5 p; ^* f0 A
因此,每当有人发现某些内容时,他们都可以将其添加到不断增长的主体中文档)。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则