The use of underscore characters in field naming conventions

C

CAD Fiend

Hello,

What is the proper naming convention for naming fields? Some people
will use underscores between the key words, some just use caps. I
believe that you also should not us spaces. Is that correct? What about
for table names and such? Does the same practice apply?

TIA.

Phil.
 
D

Douglas J. Steele

There's really no right answer: naming conventions are just that,
conventions. (other than no spaces: few, if any, argue that spaces are
okay!)

I personally prefer "camel case": using CapitalLetterToSeparateWords.
 
C

CAD Fiend

Gotcha. But one thing about camel case is that you can't use the CTRL Left
Arrow or Right Arrow on the keyboard when all of the text is together like
that.
 
J

John Vinson

Hello,

What is the proper naming convention for naming fields? Some people
will use underscores between the key words, some just use caps. I
believe that you also should not us spaces. Is that correct? What about
for table names and such? Does the same practice apply?

TIA.

Phil.

Underscores are pretty much acceptable: Access, SQL/Server, Oracle,
MySQL all accept them in field_names. Blanks are *allowed* in Access
but cause real headaches in these other dbms's (they are allowed, by
quoting the names, but they're still a hassle). CamelCaseCapitals (or
Camel_Case_Capitals if you prefer) make for easier reading, but
remember that table and fieldnames are not case sensitive so there is
no distinction between names which differ OnLy iN CapiTalIZation.

John W. Vinson[MVP]
 
B

Brendan Reynolds

Ctrl+Left and Ctrl+Right don't work with underscores in the VBA editor
either (though they do in SQL view). And for most people, the underscore is
a seldom-used (or at least 'less frequently used') character, and will slow
down typing. So there are pros and cons, for and against. As others have
said, there's really no clear-cut right or wrong here.

I'm currently reading a book on coding guidelines for .NET, and one of the
recommendations the authors make is that you shouldn't use underscores in
names of public properties or methods, but it's OK to use them in private
properties or methods. In other words, if you're the only person who will
ever have to type those names, it's just a matter of personal preference.
But if you're exposing those names to others it is better to avoid
underscores. I'm inclined to agree with that.
 
C

CAD Fiend

Sorry, Doug. I meant "can't use CRTL-Left Arrow to navigate over whole words
instead of one character at a time".
 
C

CAD Fiend

That's right! But actually that's been a thing with me since WP I
think! But it works with any MS app as well.
 
C

CAD Fiend

John said:
Underscores are pretty much acceptable: Access, SQL/Server, Oracle,
MySQL all accept them in field_names. Blanks are *allowed* in Access
but cause real headaches in these other dbms's (they are allowed, by
quoting the names, but they're still a hassle). CamelCaseCapitals (or
Camel_Case_Capitals if you prefer) make for easier reading

I happen to only disagree with this one point, John. I find the underscores
make it easier to read the field names, but that's just me.
 
C

CAD Fiend

Brendan said:
Ctrl+Left and Ctrl+Right don't work with underscores in the VBA editor

Really? I just went and opened my VBA editor (v6.3 ) in Access, and it worked
fine for me. Are we talking about the same editor?
either (though they do in SQL view). And for most people, the underscore is
a seldom-used (or at least 'less frequently used') character, and will slow
down typing.

Yeah, it DOES slow you down a little. But I think it's worth it, when it comes
to easier navigation over words, and being easier to read.
So there are pros and cons, for and against. As others have
said, there's really no clear-cut right or wrong here.

I'm currently reading a book on coding guidelines for .NET, and one of the
recommendations the authors make is that you shouldn't use underscores in
names of public properties or methods, but it's OK to use them in private
properties or methods. In other words, if you're the only person who will
ever have to type those names, it's just a matter of personal preference.
But if you're exposing those names to others it is better to avoid
underscores. I'm inclined to agree with that.

Hmm. Interesting point.
 
B

Brendan Reynolds

I enter the following into the VBA editor (Access 2003, VBA 6.3) ...

Dim using_underscore As String

I place the insertion point in front of the first 'u'. I hold down the
Control key and press the right arrow key. The insertion point jumps to just
in front of the 'A' in 'As', treating 'using_underscore' as one word.

I enter the following in SQL view ...

SELECT using_underscore
FROM tblTest;

I place the insertion point in front of the first 'u'. I hold down the
Control key and press the right arrow key. The insertion point jumps to a
position between the underscore character and the first 'u' in the word
'underscore', treating 'using' and 'underscore' as separate words, the same
behaviour that you would get if the underscore was a space.

Do you see different behaviour?
 
J

John Vinson

I happen to only disagree with this one point, John. I find the underscores
make it easier to read the field names, but that's just me.

De gustibus non disputandum est!


John W. Vinson[MVP]
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top