我正在为客户设计一个系统,他可以在其中为自己销售的各种产品创建数据表单。 他将使用的字段数不会超过 600-700(最坏情况)。看起来他可能会在 400 - 500(最大值)的范围内。
我想到了两种创建数据库的方法(使用元数据):
a) 为每个产品创建一个表,该表将仅包含该产品所需的字段,这将导致数百个表但仅包含每个产品的必要字段
或
b) 使用一个包含所有可用表单字段(从当前 300 到最大 700 的任何范围)的单个表,导致一个表将包含许多字段,其中只有大约 10% 将用于每个产品条目(a产品通常不应使用超过 50-80 个字段)
哪种解决方案最好?请记住,表的表维护(创建、更新和更改)将使用元数据完成,因此我不需要手动更改表。
谢谢!
/**** 更新 *****/
只是一个更新,即使经过了这么长时间(并且积累了很多额外的经验),我仍需要提及不是normalizing你的数据库是个糟糕的主意。此外,未规范化的数据库几乎总是(根据我的经验总是如此)也表明应用程序设计存在缺陷。
最佳答案
我会有 3 个表:
产品
- 编号
- 姓名
- 你还需要什么
字段
- 编号
- 字段名称
- 您可能需要的任何其他东西
产品字段
- 编号
- 产品编号
- field_id
- 字段值
关于sql - 一个有很多字段的 mysql 表还是很多(数百个)字段较少的表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2340778/