许多数据库系统不允许对表和字段进行注释或描述,那么除了具有良好命名约定的明显内容之外,您如何记录表/字段的用途?
(我们现在假设“优秀”的表和字段名称不足以记录数据库中每个表、字段和关系的全部含义。)
我知道很多人使用 UML 图来可视化数据库,但我很少(如果有的话)见过包含字段注释的 UML 图。.sql
但是,我在文件中使用注释方面有很好的经验。这种方法的缺点是,.sql
当数据库结构随时间发生变化时,它需要手动保持文件是最新的——但如果你这样做了,你也可以让它处于版本控制之下。
我见过的其他一些技术是描述数据库结构和关系的单独文档,以及在 ORM 代码或其他数据库映射代码中手动维护的注释。
您过去是如何解决这个问题的?存在哪些方法以及与之相关的各种利弊?您希望如何在“完美世界”中解决这个问题?
更新
正如其他人所指出的,大多数流行的 SQL 引擎实际上都允许注释,这很棒。奇怪的是,人们似乎并没有过多地使用这些功能。至少不是我过去参与的项目。