选项1:
Country | Risk Category | Value
USA | Health | 0.75
USA | Market | 0.66
USA | Technology | 0.35
选项2:
Country | Health Risk | Market Risk | Technology Risk
USA | 0.75 | 0.66 | 0.35
选项1:允许动态添加新的风险类别,而无需在发生更改时添加列,但我必须运行算法来查找我正在寻找的值,因为它与LINQ不兼容。
选项2:更容易在实体框架中使用,因为所有内容都是支架式的。但是,每次添加新类别时,数据库都需要更改。此外,可能有200多列。
哪种选择最适合长期成功和可维护性?
答案 0 :(得分:2)
老实说,这两者都不是长期和最佳的选择。可维护性,但如果我必须选择我选择选项2。
由于您在国家/地区实体与风险实体之间存在多对多的关系,因此我会将信息分开一些,并按照这样做。
国家
Unable to parse at line 20 (near " vendor/bin/phpunit --coverage-clover clover.xml ;").
风险
ID | Name |
1 | USA |
2 | CANADA |
CountryRisk
Id | Name |
1 | Health |
2 | Market |
3 | Technology |
答案 1 :(得分:1)
选项2。
如果每个国家总是存在健康风险,市场风险和技术风险 - 您永远不会冒重复数据的风险。数据库从不重复数据。
老实说,我认为选项1对选项2没有任何好处。