cancel
Showing results for 
Search instead for 
Did you mean: 

How to get locale names for day of week or month?

VolkerBarth
Contributor
1,467

Interestingly enough, I seem not to have had that need in all those years - but -

does SQL Anywhere provide names for day of week and month only in English?

Apparently, DAYNAME() and MONTHNAME() or DATEFORMAT(..., ' MMMM ') return English names only.

Accepted Solutions (1)

Accepted Solutions (1)

jack_schueler
Product and Topic Expert
Product and Topic Expert

The only way to do that is to switch the "language" of the database server using the DBLANG tool.

> dblang de
> dbeng17 demo.db

select dayname(current timestamp)
Dienstag

dblang -? will show you all of the supported languages (all 14 of them).

VolkerBarth
Contributor
0 Kudos

Ah, my bad. I run our servers with the default English locale because system messages and the like are better documented and probably easier to communicate in support cases...


But I notice - somewhat contrary to your statement -, that I can use the LANG connection parameter to get localized names even when the server runs the English locale. At least using LANG=DE within DBISQL returns "Dienstag", too, as desired. And there are also the property('Language') resp. connection_property('Language') for further diagnosis of the server resp. client language...

I'm somewhat embarrassed that I have not thought of the Golden Rule ...

jack_schueler
Product and Topic Expert
Product and Topic Expert

Now my bad. My brain must be getting a bit rusty. You are quite correct that the client can use the Language (LANG) connection parameter.

Answers (0)