【发布时间】:2011-03-04 17:35:57
【问题描述】:
根据我在下面提供的信息,您能否就将单独的表格非规范化为一个包含不同类型合同的表格是否是一个好主意给我您的意见?... 什么是赞成/反对的?...有以前有人尝试过吗?.. 银行系统使用 CIF(客户信息文件)[master],其中客户可能有不同类型的账户、CD、抵押贷款等,并使用交易代码 [types],但他们是否将它们存储在一个表中?
我有单独的表用于贷款、采购和销售交易。这些表中的每一个的行都以下列方式连接到其对应的客户:
customer.pk_id SERIAL = loan.fk_id INTEGER;
= purchase.fk_id INTEGER;
= sale.fk_id INTEGER;
由于这些表格之间有很多共同的属性,它们都围绕着同一个商品:当铺、购买和出售,我尝试将它们合并到一个名为“Contracts”的表格中,并添加以下列:
Contracts.Type char(1) {L=Loan, P=Purchase, S=Sale}
场景:
客户最初典当了商品,支付了几笔利息,然后决定将商品卖给当铺,典当行将商品放入库存,最终将其出售给另一位客户。
我设计了一个通用表格,例如:
Contracts.Capital DECIMAL(7,2)
在贷款合同中,它持有典当本金,在购买中持有购买价格,在销售中持有销售价格。
这个设计是个好主意还是我应该把它们分开?
【问题讨论】:
-
顺便说一句,这里的实际问题是什么?
-
同上。看不到你在问什么。
-
我要问的是:最好为每种类型的事务使用单独的表,还是更好地为所有类型设置一个事务表,以前做过,这将简化查询、更新和连接。 . 以前成功过吗?...等
标签: sql oracle informix denormalization