When you read the data out of the database you can use
StrConv to convert the value to "Proper Case", meaning the first letter of every word is capitalised and every other letter is lower case. An example is below, this will work within queries and VB.
StrConv( FieldName , 3 )
This works quite well for names (most of the time), here's some examples, including a few that will fail:
john -> John
john smith -> John Smith
JOHN SMITH -> John Smith
jOhN sMiTh -> John Smith
jOHN sMITH -> John Smith
john de smith -> John De Smith (Error: expected "John de Smith")
john mcsmith -> John Mcsmith (Error: expected "John McSmith")
john van der smith -> John Van Der Smith (Error: expected "John van der Smith")
A solution that handles edge cases more effectively requires a custom fuction to do the work.