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