【发布时间】:2014-07-04 13:04:54
【问题描述】:
我有一个名为dbo.Vendor 的表存储有关供应商的信息。它有这样的字段:
1. VendorID
2. VendorName
3. VendorType
4. AddressLine1
5. EMail
6. Telephone
7. and so on....
此信息对所有供应商都是通用的。但根据供应商的类型(VendorType 字段),我需要收集更具体的信息。例如,作为慈善机构的供应商将拥有一个慈善编号,但作为律师的供应商将拥有某种合法的注册号。如果供应商是电影院,那么我可能需要知道座位容量,这当然不适用于其他供应商。
我真的必须为每个不同的供应商创建一个唯一的表吗? dbo.VendorLaw,dbo.VendorCinema。或者我可以在dbo.Vendor 主表中创建所有可能的字段,并在该字段不适用于该供应商的地方留下NULL 值吗?这当然违反了规范化规则。
【问题讨论】:
标签: sql-server database-design