1

我即将开始以适当的方式重做公司数据库。我们当前的数据库一团糟,几乎没有文档。我想知道人们在设计 Interbase 数据库时推荐使用什么?是否有某种可以生成 SQL 的优秀视觉模式设计器?全部手工完成会更好吗?

基本上,人们在设计和记录数据库时通常会采取哪些步骤?如果重要的话,我打算使用 Hibernate 作为数据库的 ORM。(Interbase 的具体提示也将不胜感激)。

谢谢!

4

2 回答 2

2

通常,我使用文本编辑器。有时,我使用Database Workbench。上次我听说,Embarcadero 打算将 InterBase 支持添加到他们的一些数据库建模工具中,但我不知道这是否已经发布。

于 2009-06-12T12:27:34.477 回答
1

如果这是一个最近创建的全新数据库应用程序并且在业务中没有被依赖,那么我说你的重写/新数据库要全力以赴。但是,我怀疑您正在处理一个已经存在了几年并且被大量使用的数据库。

如果我对数据库已有几年历史的看法是正确的,我强烈建议不要从头开始。几乎任何已经存在几年的生产数据库都会“混乱”。这通常是因为现实世界对程序的要求通常要求解决方案有些混乱。几年后,您的全新数据库(如果您走这条路)也将如此。

以下是我不会从头开始重新创建生产数据库的一些原因:

  • 实时数据库包含非常有价值的多年交易和客户数据。将这些数据转移到完全不同的数据库结构中是非常困难的。相信我,即使公司现在告诉你他们不需要访问这些旧数据,他们也会。
  • 许多业务规则可能已经以默认值、触发器、存储过程甚至列的数据类型的形式内置于数据库结构中,如果不仔细检查并记录它们,您可能会忽略它们当人们开始使用系统并发现规则没有正确应用时,会花费大量时间调试和添加这些数据库
  • 您可能会在新的数据库设计中犯错误,或者稍后意识到需要更改结构以适应新功能。如果您一直在对当前数据库进行更改并从中学习,那么将来的更改将变得更容易和更直观。

这是我推荐的方法:

  • 了解并记录当前数据库,这将使您真正了解业务中的信息流。
  • 当您看到看似糟糕或凌乱的设计时,请仔细查看。您可能是对的,并且看到了改变的潜力,或者您可能会发现出于性能或其他原因进行了权衡,您可以从中学习。
  • 对数据库结构进行增量改进,确保更新文档,更改依赖这些区域的程序(或者如果不是您,请与您的程序员合作)。

我知道这似乎是一个很长的路要走,但是从一个已经维护和创建数据库 12 年的人那里得到它 - 您当前的数据库可能很混乱,因为现实世界的需求很混乱。

于 2009-06-12T10:55:43.140 回答