我见过人们使用“DataListValue”表来存储那些在 UI 的下拉列表中经常使用的值(Call_Types、DepartmentCodes、Divisions 等)。
这样我就可以在一个表格中管理它们,并且将有一个屏幕来更新代码。
我想知道是否可以将 DepartmentCode、RoleCode、CountryCode 保留在 Data_List 表中?或者我应该把它们放在单独的桌子上?
我见过人们使用“DataListValue”表来存储那些在 UI 的下拉列表中经常使用的值(Call_Types、DepartmentCodes、Divisions 等)。
这样我就可以在一个表格中管理它们,并且将有一个屏幕来更新代码。
我想知道是否可以将 DepartmentCode、RoleCode、CountryCode 保留在 Data_List 表中?或者我应该把它们放在单独的桌子上?
通常的做法是使用单个代码表来存储带有某种表类型列的代码/描述对。例如,您通常会看到这样的表格:
代码表
然而,我从来不认为这是一个好主意。即使您存储的只是代码和描述,最好为每组代码创建一个新表。这样你的外键关系就会更加清晰。另外,不可避免地,有一天您需要存储一些关于其中一个代码集的额外数据,并且您最终需要添加仅适用于存储在表和列中的代码集之一的额外列对于所有其他行将为空。它总是很快变丑。
例如,假设在上面的示例中,您将TableId
所有国家代码设置为“C”,并将所有部门代码设置为“D”。但是下个月出现了一个新要求,要求您为每个国家/地区代码存储一个邮政缩写。您是否将 PostalAbbreviation 列添加到表中,即使它永远不会应用于部门代码?或者您是否创建另一个表来存储每个国家/地区代码的附加数据?除非您有其他地方可以查找它们,否则您怎么知道“C”和“D”的含义?到处都是一个坏主意。