Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Advice on sql naming conventions

Tags:

sql

I'm looking for some advice on SQL naming conventions. I know this topic has been discussed before but my question is a little more specific and I cannot find an answer elsewhere.

I have some integer variables - generally they would have a name like 'Timeout'. Is there an adopted standard prefixing/suffixing the value so that I know what it contains when I come back to it in 6 months time?

For instance is it 'TimeoutMilliseconds'.

I'm not talking about labelling every variable this way, just those with generic values.

like image 598
dotnetnoob Avatar asked Oct 22 '22 01:10

dotnetnoob


1 Answers

Lookup ISO-11179 for the international database naming standard. for this you can grab this online for free download (though sorry I forget where). There is a lot in it, so here are some some basic summary form it:

Take your field description, remove joining words and write it backwards.

Always end with a class name. There are standard abbreviations like ID for identifier and such.

eg: Date of Entry:

 Entry_Date

Seconds_For_Delivery:

 Delivery_Seconds

Name of Widget:

 Widget_Name

Location of Widget:

 Widget_Location

Size of Widget:

 Widget_Size

Also a field should have the same name if it is a primary key or a referenced foreign key. This will pay off in readability for people that come after you, and also most DB tools will assume they are matching keys so you will also save time in using reporting tools and the like (less manual stuffing around putting links in by hand).

In the above examples, the class names are date, seconds, name, location, size. It surprises me that this ISO is not more well known.

like image 53
Mathew Frank Avatar answered Oct 29 '22 17:10

Mathew Frank