SQL TABLE命名。人与人

the*_*tto 1 sql sqlite

我正在数据库中创建一个新表,但遇到了一个命名难题。我最初想创建表的

但是后来我开始思考...我应该给桌子上的一个还是几个人

TABLE CREATE persons(name string, age integer)
or
TABLE CREATE people(name string, age integer)
Run Code Online (Sandbox Code Playgroud)

Man*_*chi 6

这是经过辩论的,通常被认为是见解,但是我建议始终使用单数形式。您的表格名称应为“ Person”。

  • 一个表应该被命名为其包含的“对象”。复数是“冗余的”,表中可能始终包含0、1或多个项目,使用单参考将其标准化。
  • 您可以将表视为一个对象-某物的“容器”。例如,如果您有一个蘑菇盒,那么它是一个“蘑菇盒”,则称它为“蘑菇盒”是没有意义的。无论其中有0、1或很多蘑菇,它始终是“ MushroomBox”。
  • 复数名称可以具有更多的不规则性和复杂性,例如“ ies”,“ es”与“ s”,或者诸如“ Status”和“ Mice”与“ Mouse”之类的单词。单数形式更简单,更容易且更一致。
  • 如果您有相关表,则单数命名约定会更好。假设您有一个表“ Student”和另一个表“ Room”。您可能有一个“ StudentRoom”表。但是名称“ StudentsRoom”或“ StudentsRooms”令人困惑。
  • 当您引用表中的列时,单数是有意义的。以下面的示例为例:SELECT * FROM Person WHERE Person.FirstName ='John'比SELECT * FROM Persons其中Persons.Firstname ='John'更有意义,因为您正在谈论“一行”或“一个人”。
  • 单数使用较少的字符:)