我目前一个项目工作。 现在出现的问题是,我在数据库表来处理动态列。
我有一个表Charges
,其中对应于每个不同的收费金额Client
将被保存。 假设该表具有以下columns-
Client_Id Charge_1 Charge_2 Charge_3 Charge_4
现在,管理员可以将更多new Charges
为客户。 在这种情况下,新的收费将被添加到该Charges
表的column
。 这需要在应用程序运行时没有在数据库设计的时候处理。 这是我的想法。
但是,它看起来并不适合我。
有没有更好的办法来处理这个问题? 请给我建议。
提前致谢。 我是新与此数据库的设计。
做一个综合表,即ClientCharges
你可以保留你原来的收费表和您的客户端表,并在客户端收费表有以下栏目:
ClientChargeId,客户端Id,ChargeId
在您的费用表中,可以不断增加(因为许多费用是您需要),然后引用在ClientCharges表ChargeId。
CREATE TABLE ClientCharges
(
ClientChargeId INT IDENTITY(1,1)
, ClientId INT
, ChargeId INT
)
INSERT INTO ClientCharges
(ClientId, ChargeId)
VALUES
(1, 1),
(1,2),
(1,3),
(1,4),
(2,1),
(3,1),
(3,2),
(4,3),
(4,4)
- 客户机1具有收费1,2,3和4
- 客户端2具有1充电
- 客户机3具有电荷1,2
- 客户端4有收费3和4
然后在客户端Id和ChargeId字段添加外键约束。
这听起来像你真正想要的是一个1对多表的关系。
你要做的就是创建一个表有两列,CLIENT_ID和充电,然后添加一个新行每次充电。
你打算如何使用这这我不清楚。 难道这些“罪名”个人交易? 或者,他们负责与客户相关的类型? 在任何情况下,它的坏的形式来修改你的数据模型是这样的。
当你有这些类型的重复字段,只是让他们自己的表。