在应用程序中(在我的例子中,是一个包含数据库,服务器和前端层的Web应用程序),如果您的字段具有有限数量的可能值,那么表示该字段的最佳方式是什么?数据库?
例如,假设我们的员工状态字段可以包含以下值:
此字段将在层之间传输,并且逻辑上的逻辑用于不同目的(例如,在网页上以不同颜色突出显示)。
那么存储这些值的最佳方法是什么,以便 a)错误的可能性较小,但 b)对开发人员来说仍然很容易使用?< / p>
应该将值存储为对应于不同状态的枚举(1,2,3),还是作为普通字符串,或者作为一些没有空格的缩短值,如(ACT,TER,LOA),或者这是纯粹是一个偏好的问题?因为你不会遇到拼写错误,我倾向于数字,但这有混淆的权衡。
赞赏此主题的标记建议。
答案 0 :(得分:0)
我认为两者都有PRO和CONS。 使用数字:
1. Lesser Size
2. Performance
3. Lesser Error
4. Easy To Code
另一方面,当使用ID时,一个主要问题是每个需要与DB交互的应用程序需要知道这些ID及其含义。主要示例任何报告工具。当然,我们可以通过为每个这样的对象类型创建定义表来抵消这种影响。即只有两列ID的表,DESCR然后一个简单的联合就足够了。
使用字符串:
1. Easy to remember
2. Easy for all other Systems directly talking to DB