我有一个很大的Product表:
| 产品编号 | 产品名称 |
|---|---|
| 1 | 产品一 |
| 2 | 产品二 |
| ... | ... |
| n | 产品编号 |
而 n 大约为 2,000,000。
为了限制某个国家/地区的产品可用性,我有第二个ProductCountryRestriction表:
| 产品编号 | 国家代码 | 包含排除 |
|---|---|---|
| 1 | 美国 | 0 |
| 1 | 英国 | 0 |
| 2 | 澳大利亚 | 1 |
| 2 | 新西兰 | 1 |
如果产品仅限于一个或多个国家/地区,我会将包含产品的国家/地区添加到此表中,其中 IncludeExclude = 0。例如,产品 1 仅适用于美国和英国。
如果产品对除某些国家/地区以外的所有国家/地区都有效,那么我将使用 IncludeExclude = 1 将产品 - 排除的国家/地区添加到此表中。例如,产品 2 适用于除 AUS 和 NZ 之外的所有国家/地区。
与产品对应的所有国家/地区代码必须设置为 IncludeExclude = 0 或 IncludeExclude = 1。不允许混合使用 0 和 1。例如,对于产品 1,有 IncludeExclude = 0 的记录,我无法将 ProductID = 1 和 IncludeExclude = 1 的记录添加到此表中。
该系统的用户可以选择多个国家进行工作。用户首选项存储在UserCountry …