Ale*_*hov 14 schema oracle foreign-key database-design
我正在将一个大型 pl/sql 基于 web 的应用程序转移到专用服务器。该应用程序位于一个包含 70 个程序代码包的模式中。这个应用程序是在不同的时间大约有 15 人完成的。我们通常的做法是在不同模式中的引用表上创建外键,因为它非常方便并且保持数据库非常干净,因为我们不需要在不同模式中保留相同的引用表。
但无论如何,我的 DBA(他用 DB 创建了新实例并将我的应用程序复制到 Solaris 区域内)今天说得很严厉,“不同模式上的外键是邪恶的,你需要销毁它!”。他没有解释他的观点。
在大型应用程序中这样做真的很糟糕吗?
模式非常适合将表与逻辑子系统隔离。外键保证数据完整性。这些是正交概念——显然子系统之间的数据完整性也是必须的。会计和运输以及可能的中央客户数据并不存在于客户在会计中使用时可能被删除的孤岛中。
这就是我在 SQL Server 上的做法(尽管再次重申,我们对架构的定义是 IIRC,与 Oracle 的定义略有不同)。
因此,我认为 DBA 的要求是无能的标志。吨
归档时间: |
|
查看次数: |
6860 次 |
最近记录: |