Jump to content

  • Log In with Google      Sign In   
  • Create Account


SQL Server Table naming conventions


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
4 replies to this topic

#1 Memories are Better   Prime Members   -  Reputation: 769

Like
0Likes
Like

Posted 26 May 2014 - 01:35 PM

When you create a new table in SQL Server the default name is dbo.Table_# with # being the new table value. I rename my tables without the dbo. and it is almost always plural.  Looking at TFS collections I noticed all the tables were named with one of the following prefixes Codesense.tbl_ / dbo. / dbo.tbl_ where they were mostly singular names regardless of the prefix.

 

There is a fair amount of noise online on whether tables should be plural / singular online but nothing really mentioned prefixes such as dbo. or dbo.tbl_.

 

My question isn't really about naming tables with plural / singular names but more about the dbo. dbo.tbl_ prefix. Is this the SQL version of Hungarian notation where I can freely avoid or is there some kind of rule where it is best to follow this practice and name tables with dbo. / dbo.tbl_ prefixes?

 

Edit: This applies to other areas of the DB too, almost everything is created with dbo. but I figured I would figured I would talk about the table prefixes only


Edited by Strix_Overflow, 26 May 2014 - 01:39 PM.


Sponsor:

#2 wack   Members   -  Reputation: 1264

Like
0Likes
Like

Posted 26 May 2014 - 02:06 PM

The dbo part is the schema name. It's sort of a namespace that you can connect database logins to. It doesn't have to be "dbo", you can create any schemas you want and set tables and other objects as owned by that schema.

I never saw the schema name as part of the table name, not sure if other people see it that way though.

#3 Memories are Better   Prime Members   -  Reputation: 769

Like
0Likes
Like

Posted 26 May 2014 - 03:53 PM

Thanks for the reply. I had a look at this http://technet.microsoft.com/en-us/library/dd283095(v=SQL.100).aspx after I wrote the question. I was quite surprised I never came across this but then after doing some reading it makes sense as I am not doing DB work in a team however due to the way it helps combining tables I must admit it is much better than my current 'separate by underscore' approach.

 

Anyway thanks for the reply.



#4 ChaosEngine   Crossbones+   -  Reputation: 2232

Like
0Likes
Like

Posted 26 May 2014 - 04:38 PM

Personally I name tables after what they contain, so Weapon, Player, Monster, etc.

 

I could maybe see the use in using tbl_ to differentiate between tables, views, etc, but in practice I've never needed it.


if you think programming is like sex, you probably haven't done much of either.-------------- - capn_midnight

#5 spazzarama   Members   -  Reputation: 596

Like
1Likes
Like

Posted 27 May 2014 - 03:35 AM


dbo.tbl_ prefix

 

The use of prefixes such as tbl, sproc, vw (view), func (function), clr and so on are really just hints as to what the type of the database object you are dealing with is.

 

Sometimes when writing queries it is handy to know that the table you are querying really is a table and not a view. Mostly helpful in really big projects (i.e. "I know I have to call a stored procedure, but what was the name again?? oh i'll type .sproc_ first to get the list of 100 in code completion and hide the 100's of tables").

 

Personally I don't care what naming conventions are used as long as they are consistently applied, my old boss on the other hand would often say "Mr Codd would be turning in his grave!" when he saw something he didn't like - including tbl_ prefixes and pluralisation smile.png.

 

(edit: sometimes what technology you use impacts your naming convention, e.g. using the Entity Framework or other ORM tools might steer you towards using singular or plural depending on the implementation and what the code it generates looks like)


Edited by spazzarama, 27 May 2014 - 03:43 AM.

Justin Stenning | Blog | Book - Direct3D Rendering Cookbook (using C# and SharpDX)

Projects: Direct3D Hook, EasyHookAfterglow, C#raft

@spazzarama

 




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS