26

How to Change Oracle SQL Developer Language

I needed to change SQL Developer language, because today I installed it on a machine whose operating system is Windows 8 in Spanish, and SQL Developer got installed in Spanish too :-/

Even though Spanish is my first language, I usually like to have programs installed in English  because, among other things, it is usually easier to find help for the English versions. People might try to help you by saying “Go to this option, click on that button, or change this setting”, but if you have the program in other language, things can get complicated at times. That’s why I want SQL Developer in English, so, How do I change Oracle SQL Developer language?

It turns out that there is a pretty easy way to change the user interface language, which I describe below.

In case you prefer video: Changing SQL Developer language, on YouTube

  • Close SQL Developer, if it is running.
  • Go to the installation folder. To do that you can right-click on its shortcut, and click on ‘Open file location’.
  • Once there, open  the ‘sqldeveloper’ folder, and then the ‘bin’ folder.
  • There is a file called “sqldeveloper.conf”, which is the one you need to edit to change the language. Open this file with the text editor of your choice.
  • To change the language, you need to add a new setting there.  Since SQL Developer is a Java application, we need to use the AddVMOption command to pass the parameter to the Java virtual machine when it starts the application. The parameter we need to add is ‘user.language’ and in this case we need to set it to ‘en’, for English.  So, this is the line you need to add: AddVMOption -Duser.language=en

And that’s it.  Now you can save and close the file, and the next time you open SQL Developer, you will see it in English!

Oracle SQL Video Course Discount Offer

These are the first lines of my sqldeveloper.conf file after editing.  Since there is not a specific place to put this new setting, I put it almost at the beginning (with a comment to help me remember that it is for the program’s language):

 

IncludeConfFile ../../ide/bin/ide.conf

SetJavaHome ../../jdk

#GUI language
AddVMOption -Duser.language=en

#Set our usage tracking URI
AddVMOption -Dide.update.usage.servers=http://www.oracle.com/webfolder/technetwork/sqldeveloper/usage.xml

 

To see the list of other languages that are supported, instead of going to the ‘sqldeveloper\bin’ folder, go to the ‘ide\bin’ one, and open the ‘ide.boot’ file with a text editor.  Once there, look for a line containing the text ‘oracle.translated.locales’.  Those are the languages you can configure your SQL Developer installation to use.

Easy, don’t you think?

UPDATE:

Well, there is an easier method, which doesn’t requiere modifying the configuration file (thanks to Igor, who suggested it in the comments of this post).  It turns out that you can send the language setting as a command line argument when executing SQL Developer, so you can make it use a specific language by just modifying the shortcut’s target, like this:

“C:\Program Files\sqldeveloper\sqldeveloper-17.4.0.355.2349\sqldeveloper\sqldeveloper.exe” –AddVMOption=-Duser.language=en

Please note that those are two dashes before AddVMOption, but only one after the equal sign.

Pretty cool huh?

*Originaly published on August 8th 2015.
Opt In Image
Don't want to miss any Oracle SQL tips?

Subscribe to be informed about new posts, tips and more awesome things.

Carlos

I've been working with Oracle databases on a daily basis for more than 10 years.

26 Comments

  1. “Easy, don’t you think?” No, I don’t think so. That’s why I’m glad you made this tutorial, thank you.

  2. Hello Carlos,
    Is there any other registry settings / GUI method through which I can change the GUI language of SQL Developer application alone ? using the NLS_Lang can change the whole oracle related DB and other relative elements I guess.

    Thanks and Regards,

    Sree

    • Hi Sree,

      There is no other method to change the GUI language that I know of.

      Why do you need another method?

      • We have n number of users and they need to use their own language preference. Hence we are using per user profile system via appsense and all. Inorder to edit the config file we need to package again. Was trying to avoid that somehow. If there is no other solution , will proceed with editing config file. And one more question, Is there any way to reroute or change the default connection file location of sql developer to other user specific drives/folder ?? Every time we upgrade the DB connections are getting lost and need to migrate the same again and again.

        • There is a method for changing the GUI language, suggested by Igor in a previous comment, which only involves modifying the target of the SQL Developer shortcut. Please take a look at that comment, it might help.

          As for the other question: I don’t know of a way to change the location of the connections file, but will see if I find a method.

        • There is a way to change the user directory path, but it changes all of the properties related to the user dir, not only the connections.

          To set the directory you need to add another option in the sqldeveloper.conf file, like this:

          AddVMOption -Dide.user.dir=\\your\path\to\conf\dir

          To confirm that it was set correctly, you can open SQL Developer and go to Help->About->Properties, and look for the appropriate properties in there.

          Unfortunately, it seems that it cannot be set via shortcut arguments.

  3. This solution does work but you’ll need to modify the conf file manually after each SQL Dev update. That’s why there’s another, hussle-free solution: simply edit the Target field of your SQL Dev shortcut (pay attn to where you place double quotes):
    “C:\your particular path\sqldeveloper.exe” –AddVMOption=-Duser.language=en
    You should also keep in mind that simply changing your SQL Dev GUI lang quite probably won’t be enough; you’ll need to change the Database NLS settings in Preferences, too. For example, the following query
    SELECT TO_CHAR(TO_DATE(’01-NOV-05′, ‘DD-MON-RR’) ,’YYYY’) “Year” FROM DUAL;
    will certainly fail if your default locale prescribes dates in the DD.MM.YY fomat (e.g., ‘01.11.05’ instead of ’01-NOV-05′)

    • Hi Igor,
      Thanks for the tip about the language. I can’t believe I didn’t know that 😉

      As for the second part of your comment: No, that query will not fail, because you explicitly defined the date format when calling TO_DATE, which is the correct thing to do, but the fact that you mention it makes me suggest to be careful when you expect that certain NLS settings are needed in order to make certain queries work. That should never be the case. Any query should be written in a way that it will run on any system, regardless of local settings. That is why implicit conversions are so evil.

      Thanks for your comment!

  4. Thanks a lot Carlos, it worked perfectly. Before this I tried various options by going into tools and changing the language and nothing seems to be working, but finally your method is working.

    Cheers…!!!

  5. Hi Carlos,

    I tried as you suggested, but it didn’t work out in my case initially. I was trying to have English as default language for which the code is ‘en’, but I didn’t find the same in ide.boot file.
    Added ‘en’ in boot file & then made the change in conf file worked. 🙂

    Thanks. Nice Blog.

Leave a Reply

Your email address will not be published. Required fields are marked *