NLS_LANG = language_territory.charset
The three arguments for NLS_LANG can be specified in different combinations. For a Japanese locale, parameter arguments might be specified as follows—
NLS_LANG = JAPANESE_JAPAN.JA16SJIS
For an American locale, parameter arguments might be specified as follows:
NLS_LANG = AMERICAN_AMERICA.WE8MSWIN1252
How Space Manager Reports Locale Settings
Space Manager reports locale settings in reorganization scripts, script logs, and the QSA log. All can be sent to Quest Software Technical Support.
Information in scripts and log files can be used by Support to troubleshoot any locale-related problems that occur during script execution. Information in saved maps allows Support to configure its environment to match yours so that database, object, and owner names are correctly displayed.
Locale Information in Reorganization Scripts
Locale information for your Oracle client and database are reported in the headers of Space Manager reorganization scripts. The settings reported for both are language, territory, and character set. The settings displayed are those that were current at the time a script was generated.
Locale Information in Script and QSA Logs
Locale information for your database and database server operating system is reported in script execution logs and in QSA’s log (qexecd.log). This information can help you determine whether locale settings for the two are compatible. Ideally, the operating system character set should be the same as or a superset of the database character set.
The information displayed in script logs and in QSA’s log is as follows:
- NLS_LANG—This shows the database language, territory, and character set being used by QSA to connect to and communicate with your database. These values are specified with the NLS_LANGUAGE, NLS_TERRITORY, and NLS_CHARACTERSET parameters when a database is created. QSA records parameter values in its configuration file (QEXECD.CONF). It then retrieves them from this file during script execution.
- LC_ALL—This shows any setting for the LC_ALL environment variable on a UNIX or Linux database server. When LC_ALL is not set, the LC_ALL field is either blank or shows a value of NULL. A value for LC_ALL overrides any values for LC_CTYPE and LANG.
- LC_CTYPE—This shows any setting for the LC_CTYPE environment variable on a UNIX or Linux database server. When LC_CTYPE is not set, the LC_CTYPE field is either blank or shows a value of NULL. A value for LC_CTYPE overrides any value for LANG.
- LANG—This shows any setting for the LANG environment variable on a UNIX, Linux, or Windows database server. When LANG is not set, the LANG field is either blank or shows a value of NULL.
- Unicode translation—This indicates whether QUEST_EXEC commands are being converted to UNICODE during script execution. QSA converts commands for databases that use a multibyte character set such as JA16SJIS or JA16EUC. It does not convert commands for databases that use a single-byte or UNICODE character set such as AL24UTFFSS, UTF8 or AL32UTF8. The message is displayed in one of two ways:
- Unicode translation is language_territory.charset—This is displayed when QSA must convert QUEST_EXEC commands to UNICODE. The message identifies the character set into which commands are being converted. The message also identifies the language and territory being used for conversion.
- Unicode translation will not be used for this database—This is displayed when QSA is not converting QUEST_EXEC commands to UNICODE. In this case, the database character set is used for commands. The message identifies the character set, language, and territory for the database.
- Unicode conversion size—This shows the maximum size for the conversion buffer. The default is 4000 bytes, which should be sufficient in most cases. (Buffer size is displayed even QUEST_EXEC commands are not converted to UNICODE. However, a conversion buffer is not used.)
- Unicode database character set is—This shows language, territory, and character set for the database. If UNICODE translation is being performed, the character set displayed in this message is different from the character set displayed in the Unicode translation is language_territory.charset message.
Locale Information Only in Script Logs
The locale information reported only in script execution logs allows you to see the database NLS settings used for script execution. The information is as follows:
- NLS instance settings—This shows the language, territory, and character set specified for your database with NLS_LANGUAGE, NLS_TERRITORY, and NLS_CHARACTERSET database parameters.
- NLS config settings—This shows the language, territory, and character set from QSA’s configuration file (QEXECD.CONF). QSA automatically records settings for the NLS_LANGUAGE, NLS_TERRITORY, and NLS_CHARACTERSET database parameters in its configuration file. It then retrieves them from this file during script execution. NLS settings in QEXECD.CONF must not be changed.
- NLS environment settings—This shows the language, territory, and character set that were actually used by QSA to connect to your database during script execution. The values for NLS environment settings should be the same as those for NLS config settings. However, they might not be the same if the operating system experienced problems or if the database ran out of space during script execution.
Use the SQL Editor for a Certain Locale
The SQL Editor supports locale settings as follows:
- Query results—When a query is run from the SQL Editor, query results are displayed in the characters for your client computer operating system character set.
- Oracle names and SQL—When you enter SQL statements in the SQL Editor, you can enter Oracle names in the characters for your client computer character set. However, you must use U.S. English (US7ASCII) as the input language for the command portion of each SQL statement.
- Scripts—When a Space Manager script is viewed in the SQL Editor, script statements are displayed in U.S. English characters (US7ASCII). Within script statements, object names, object owner names, and tablespace names are displayed in the characters for your client computer character set.
As you use the SQL Editor, you can easily switch between input languages using Windows options such as the Language Bar and key sequences. For more information, refer to Windows documentation on input locale.
Important For characters to display correctly in the SQL Editor, the locale for the connecting user must be compatible with the language for the client computer operating system. See Check the Client Computer Character Sets for more information.
Fonts Used in the SQL Editor
The SQL Editor defaults to a certain font based on the language setting for your client computer operating system. The defaults used are as follows—
- Font for Japanese— Microsoft’s MS font is the default font for Japanese.
- Font for Western languages—Microsoft’s Courier New is the default font for Western languages such as French and English.
- Font for other languages—A font chosen by the operating system is the default for non-Japanese and non-Western languages such as Chinese and Korean. The default can vary by language.
Default fonts for Japanese and Western languages are fixed-width (monospace) fonts. Default fonts for other languages can be either a fixed-width font or a variable-width (proportional) font.
If you want to change the font used in the SQL Editor, you can do this by creating a Font key for the editor in the Windows Registry. You might want to switch to a fixed-width font if a variable-width font is the default. Fixed-width fonts are sometimes easier to read. Values for the SQL Editor’s Font key can be changed whenever needed. Different fonts can be specified for different users.
To specify a font for the SQL Editor
Open the Windows registry on your Space Manager client computer.
Caution: Editing your Registry incorrectly can cause serious, system-wide problems. It is advised that you back up your Registry before modifying it.
Navigate to the SQL Editor key. The path to this key is:
HKEY_CURRENT_USER > SOFTWARE > QUEST SOFTWARE > Space Manager > SQL EDITOR
- Right-click the SQL Editor key and select New | Key. Enter Font as the name of the key.
- Specify the name of the font to use in the SQL Editor as follows:
- Right-click the Font key and select New | String Value. Enter Name as the name of the value.
- Double-click the Name value and enter a font name in the Value data field. For example, enter Courier New to use Microsoft’s Courier New font.
- Specify the size of the font to use in the SQL Editor as follows:
- Right-click the Font key and select New | DWORD Value. Enter Size as the name of the value.
- Double-click the Size value, select Decimal, and enter a font size in the Value data field. For example, enter 10 for a 10-point size.
- Close the Windows registry.