Database Naming Conventions by Microsoft?

The naming conventions used in SQL Server’s AdventureWorks database demonstrate many best practices in terms of style.

To summarize:

  • Object names are easily understood
  • Table names are not pluralized
    (“User” table not “Users”)
  • Abbreviations are few, but allowed
    (i.e. Qty, Amt, etc.)
  • PascalCase used exclusively with the
    exception of certain column names
    (i.e. rowguid)
  • No underscores
  • Certain keywords are allowed (i.e.
    Name)
  • Stored procedures are prefaced with
    “usp”
  • Functions are prefaced with “ufn”

You can find more details here:

One caveat: database naming conventions can be very controversial and most database developers I’ve met have a personal stake in their style. I’ve heard heated arguments over whether a table should be named “OrderHeader” or “OrderHeaders.”

Leave a Comment