N/APosted on - 07/17/2011
When creating a new table (via "New Table" or "Data Load …") NLS_LENGTH_SEMANTICS of table columns are always in byte even when NLS_LENGTH_SEMANTICS is set to char for the instance (and so as default for all sessions) and has not explicitly changes for the current session. Is there a way to change this behavior or could this be a general problem in 3.0? I would like SQL Developer to use the standard settings of the instance as long as I don't set it different for a session. Please give me a little hint how to solve this issue.
Thanks in advance.
V3.0, NLS_LENGTH_SEMANTICS byte vs. char for CREATE TABLE
By default, NLS_LENGTH_SEMANTICS value is set to BYTE but its range of values can either be BYTE or CHAR. For the tables in SYS and SYSTEM, NLS_LENGTH_SEMANTICS doesn't apply. The byte semantics is always used in the data dictionary. Every time you start a new table, it restores to its default value.
To override the default behavior, try to change the setting by doing the following procedure:
1. From the SQL Developer Menu, Select Tools
2. Click Preferences
3. Expand the Database tree
4. Select NLS
5. From the set of options, select the Length dropdown and change it from BYTE to CHAR
6. Click OK to change the default settings.