数据库日期字段 - 命名规范

9

如何为日期/时间字段命名? 我无法决定是否要使用诸如expiry_dateend_timecreated_on之类的内容,还是仅使用expiresmodified等简单的名称。


参见:https://dev59.com/JHM_5IYBdhLWcg3wcCrc - Ryall
3个回答

8

我认为两种标准都可以,但我个人觉得像"modified"这样的列名如果不看相关数据类型是很模糊的——它是布尔值、日期还是用户ID?我更喜欢"modified_on"、"modify_date"、"is_modified"、"modified_by"或类似的名称。


6

我通常使用“date_”作为前缀:

date_created
date_end
date_deleted
date_modified

只要你保持一致,就应该没问题。或者,如果你正在开发一个现有产品,那么请遵循他们的标准。在中途更改惯例只会让你身后的人感到烦恼。

3
我知道的大多数日期字段(正确地)比天要精确得多。通常精确到秒,甚至更高。因此,“time_”可能是一个更准确的前缀,但“date”这个术语有着悠久的历史,并且能够很好地传达含义。 - Slartibartfast
1
是的。虽然我出于习惯存储日期时间,并根据应用程序需要的分辨率进行过滤。 - CaseySoftware
1
这是一篇旧帖子,但我喜欢使用 dt 而不是 date - vol7ron

5

我知道这已经很老了,但是我想提出"At"的后缀。例如CreatedAt或ModifiedAt。在传统的方法中这样做很有意义,并且不需要在名称中指定类型。


1
我认为这可能会与位置混淆,这又回到了“日期”后缀/前缀的建议。 - JasonH
@JasonH 如果你一贯遵守规则,就不应该有这种情况。不过,从我所看到的来看,也许“On”会是一个更好的后缀,因为它可以消除这种歧义。 - Ryall
1
@Ryan 我同意使用后缀'On'比'At'更好。当然,'At'通常用于指定时间,而'On'则用于指定日期。回顾我的原始陈述,我可以理解为什么有些人更喜欢使用'At'。 - JasonH

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接