想象一下,您有一个网站,其中有多个下拉菜单,这些下拉菜单是从后端数据库填充的。目标是将这些值存储在数据库中,并在渲染表单时检索它们。
我见过使用两种方法:
1) 每种列表类型一张表:
profession_type
|id|value|
hobby_type
|id|value|
2) 所有查找值一张表:
|id|type |value|
|0 |profession_type|value|
|1 |profession_type|value|
|2 |profession_type|value|
|3 |hobby_type |value|
|4 |hobby_type |value|
|5 |hobby_type |value|
两者都有客观的优势吗? #2 似乎更通用(您按类型从表中进行选择以填充特定的下拉列表),但该表往往会比使用 #1 时大得多。另外,如果您使用#2,所有外键都指向同一个巨型表。这看起来没什么大不了的,但在我看来这种做法看起来更复杂。
我会选择#2。您可以检索和缓存所有信息,即使添加新类型,也无需更改数据库或检索逻辑。
如果您要添加和更改表,则需要接触数据库架构以了解将来的所有更改,并更改新表的检索代码。
此外,您对桌子大小的担忧可能是没有根据的。除非你有数百万行,否则就没问题。我想象有数百或数千行?数据库可以轻松处理这个问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)