Database Naming Conventions by Microsoft?

No, there isn't but the practices in the link you provided are good to keep in mind.

With respect to naming stored procedures - do not prefix them with "sp_" You can read more about why in this link:

"Do not prefix stored procedures with sp_, because this prefix is reserved for identifying system-stored procedures."


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."