Bug #7722 language should be a dynamic global server variable
Submitted: 7 Jan 2005 0:42 Modified: 29 Jul 2010 13:43
Reporter: Christian Hammers (Silver Quality Contributor) (OCA) Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Charsets Severity:S4 (Feature request)
Version:5.1 OS:Linux (Debian GNU/Linux, Any)
Assigned to: Alexander Barkov CPU Architecture:Any

[7 Jan 2005 0:42] Christian Hammers
Description:
Hello

It would be nice if
  SET GLOBAL language = "/usr/share/mysql/english"
would work.

This could be handy for programmers who write scripts that check the return messages
and try to parse them without knowing the native language choice of the server admin.

How to repeat:
Start mysqld with --language=/usr/share/mysql/german and do
"CREATE TABLE test.t (i int) ENGINE=bdb; CHECK TABLE test.t;"

Suggested fix:
Make language a dynamic global server variable or alternatively commands like "CHECK 
ABLE" should also print some kind of error number next to the "note: table-engine does not support check" strings.
[8 Oct 2008 10:10] Susanne Ebrecht
Christian,

many thanks for writing a feature request. I thought about this deeper.

This is a huge topic. By accident you pasted here two feature requests instead of one.

1) variable language should be dynamic and it should be possible to use SET here.

2) global or locale? This is another topic. As admin I agree with you that it would be nice to have it global as user of your database I would complain.
At the moment variable is global and just consider I set it to German and a non-German speaker is using my database. He will get something like this:

mysql> creae table t(id serial);
ERROR 1064 (42000): Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei 'creae table t(id serial)' in Zeile 1

Do you really thing my user is able to understand this error message?

This makes as much sense as when you set language to English and the user is a 40 years old Eastern German who never learned English (because he went to school during a time when they learned Russian instead).

Consider, most spoken language in the world still is Chinese. Not everybody is able to speak/understand English.

Anyway, I will open a second feature request for this issue.

And I will let this bug open for the SET issue.
[8 Oct 2008 10:14] Susanne Ebrecht
Summary:

This feature request is for:

Language variable should be dynamic and it should be possible to use SET language = <my language> here.

That you need a server restart for simple language setting is a "nogo".
[8 Oct 2008 11:28] Susanne Ebrecht
The second feature of this feature request here is in bug #39926
[29 Jul 2010 13:43] Alexander Barkov
This task has been done in 5.5:

http://forge.mysql.com/worklog/task.php?id=751