gpt4 book ai didi

database - 定义数据库 ID 常量/变量的最佳实践是什么

转载 作者:数据小太阳 更新时间:2023-10-29 03:15:53 24 4
gpt4 key购买 nike

我发现当我处理一个项目时,它通常会简化一些事情来定义代表数据库 ID 字段的变量或常量。在 golang 中,我有一个包含

的 constants.go 文件
const (
//SELECT ID FROM dbo.MyTable
MYTABLEID_NO = 1 // MyTable ID for NO
MYTABLEID_YES = 2 // MyTable ID for YES
MYTABLEID_MAYBE = 3 // MyTable ID for MAYBE
)

这被认为是不好的做法吗?如果是的话,我怎么能绕过这样做呢?在 golang 中有更动态的方法吗?如果由于某种原因 ID 更改、添加新 ID 或表有许多 ID,这种处理方式开始崩溃。

最佳答案

您可能会得到截然不同的答案,因为它只是归结为偏好。我不认为这是不良做法的一个例子。如果您不使用 orm 映射器,那么常量或枚举将是表示“类型化”的好方法。您应该问自己两个问题。

  1. 值(value)观一旦确立,是否会发生变化。
  2. 代码和数据库之间是否需要松耦合。

如果 #1 的答案是肯定的,那么我会考虑从类型表中提取您的值,因为首先使用常量或枚举会违反直觉。 (如果类型是您的应用程序的核心,并且在添加值时不需要修改其他客户端应用程序,那么这将更容易维护和用于逻辑比较)

如果 #2 的答案是肯定的,那么我会研究一个 orm 映射器或其他方式来动态地表达你的恒定范围。如果您无法响应对数据库的更改,那么您就会陷入困境。

关于database - 定义数据库 ID 常量/变量的最佳实践是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36166967/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com