Reason 1 - Concept

Think of a bag containing apples. It is an "Apple Bag", it doesn't matter if contains 0, 1 or a million apples, it is always a bag. Tables are just that, containers. The table name describes what it contains, not how much data it contains.

Reason 2 - Convenience

It is easier to decide upon a singular name rather than a plural one. This is because objects can have irregular plurals or no plural at all. Of course, there are exceptions. For example News.

Singular Names

  • Customer
  • Order
  • User
  • Status
  • News

Reason 3 - Aesthetic and Order

This is particularly useful in master-detail scenarios. This promotes readability when tables are listed in name order:

  1. Order
  2. OrderDetail

Compared to:

  1. OrderDetails
  2. Orders

Reason 4 - Simplicity

Put all together, Table Names, Primary Keys, Relationships, Entity Classes... is better to be aware of only one singular name instead of two (singular class, plural table, singular field, singular-plural master-detail...)

  • Customer
  • Customer.Id
  • Customer.Address
  • public Class Customer {...}
  • SELECT FROM Customer WHERE Id = 100

Once you know you are dealing with "Customer", you can be sure you will use the same word for all of your database interaction needs.

Reason 5 - Globalisation

The world is getting smaller, you may have a team of different nationalities, but not everybody has English as a native language. It would be easier for a non-native English language programmer to think of "Repository" than of "Repositories", or "Status" instead of "Statuses". Having singular names can lead to fewer errors caused by typos, and save time by not having to think "Is it Child or Children?", hence improving productivity.

Reason 6 - Why not?

It can even save you writing time, save you disk space

  • SELECT Name FROM Customer WHERE Id = 100
  • SELECT Name FROM Customers WHERE Id = 100

You have saved 1 letter, 1 byte, 1 extra keyboard hits 😎.

Copyright © 2025 delaney. All rights reserved.