显示键/值数据的更好方法



我的问题背景是这样的:

名为"用户

"、"用户"的数据库表有一个"状态"列,其值可能是"0"(禁用)、"1"(正常)、"2"(其他)。

我需要向不同国家/地区的用户显示不同的"状态"文本,这意味着应该显示"禁用"或"禁用"(中文字符)而不是"0"。

现在,我设计了一个名为"代码"的"映射"表,其中包含列:"代码","值","区域设置(国家)","类型"。我应该连接两个表("用户"和"代码")以显示区域设置可靠值,还是使用另一个查询来获取它(我认为可以使用查询缓存)。

注意:"代码"表中的"类型"列是针对类别的代码。 例如:"用户"有"状态","菜单"有"状态"。

你的选择是什么? 和原因。 谢谢。

你是说你的代码、值、区域设置和类型的表是 State 的查找表吗? 如果是,那么听起来不错。 但是,由于您没有提到这些专栏的含义,因此很难说这是否是正确的方法。

此外,这在很大程度上取决于您访问数据的方式。

如果您尝试在SQL查询中获取完整输出,那么我这样做的方法是专门为只有两列状态和状态描述的状态提供一个查找表。 在"状态"上联接到该查找表,并拉回要向用户显示的状态说明。

如果要在 SSRS 或类似环境中显示数据,则根据 State 的值对其中的说明进行硬编码可能是一个很好的举措。 这将避免从查询中加入的成本。

如果"状态"并不总是改变,我将使用 ENUM 列。

伙计们,我找到了正确的方法! 属性文件。首先,为什么不使用数据库?由于"state"不是字典列,因此它是具有有限业务相关值的业务列。因此,开发人员而不是系统管理员应该负责维护它们。属性文件是开发人员执行此操作的正确方法之一。

最新更新