数据库表公共ID的命名约定是什么



假设我的表的名称是

Entries

那么表的id列将是

EntryID

但是公共身份证呢?以下是一些替代方案和我的问题:

EntryID_public - postfix should be for content (_on), underscore should be avoided
EntryID_Public - postfix should not have uppercase
EntryIdPublic - could work, but acronyms with two letter should be capitalized according to some.
PublicID - too anonymous column name, no reference to its content
EntryIDPublic - three character acronym, looks bad and is hard to read.

到目前为止,我认为最重要的选择是最好的。标准规定是什么

虽然没有固定的规则,但这些年来我已经学会并使用了一些约定。首先,我避免在表中使用复数名称。这简直令人困惑。在您的示例中,我将表命名为entry

那么id将是entry_id

在我的约定中,_id指定entry_id是该表的主键,AND通常是一个数字序列号。

我使用的其他主要密钥类型:

  • table_code:一个char键
  • table_guid:生成的guid
  • created_on:创建时间戳
  • updated_on:更新时间戳

这表明,当您与另一个表实现外键关系时,键(table_id)来自特定的表,并且如果您使用ER图表工具,它们通常可以很好地与此约定配合使用。

我唯一发现需要重命名外键的时候,是当存在自引用关系时,或者在涉及同一表的多个外键的多对多解析中。通常,这些可以很容易地加上前缀,如下所示:

parent_person_idchild_person_id

总之,我不完全清楚你所说的公众身份是什么意思?如果你的意思是,你有一个候选密钥,那么它的命名方式应该描述列的实际内容。典型的例子是一个人的SSN(社会安全号码)。

标准规定了什么?

我不认为有任何这样的命名标准。你可以根据你的可读性和易用性来命名它。

我更喜欢把它命名为EntryID_public,但这完全取决于一个人的容易程度和选择。许多人可能会争论,因为他们会发现任何其他公约都更可读。但就命名约定标准而言,没有这样的标准。

最新更新