I developed a standards document similar to Michael Hoteks, but more in line with my habits. I am a fan of abbreviations and Proper case, but I have seen some good arguements to use more descriptive names.
I have an article (not posted yet) on naming standards, but basically here are mine:
Tables: descriptive name of data being stored (customer, products, etc.). Suffix of _lu for lookup tables.
Columns:Use standard abbreviations (set forth in company document), proper case. Ex, EmpID, CustID, ProdSKU, OrdDt
PK: <table name>_PK
FK: <source table>_<dest_table>_FK. If more than one FK, then FK1, FK2, etc.
Indexes: <table name>_IDX for clustered index. If this is PK, PK rule takes precedence. Non clustered indexes are <table name>_NDX1, _NDX2, etc.
Triggers: Haven't done much with instead of triggers, but my standard held over from v6.x is tr<purpose><table name>. Ex: triCustomers (insert trigger for Customers table), triuEmp (insert, update trigger for Emp).
Defaults: df<name>. descriptive name
Rules: don't use them. Suggest r_
User Defined Datatypes: Not used
Stored Procedures:
sp<purpose><descriptive name>. Ex. spIns for inserts into single table, spAdd for inserts into multiple tables. I have a series of 12 or so purposes spelled out in the document.
For DBA procs, dbsp<descriptive name>
Steve Jones