Oracle – Problems with NLS_LENGTH_SEMANTICS Set to CHAR

character-setnlsoracle

I've always thought that anyone using a database where NLS_LENGTH_SEMANTICS set to BYTE when using a multi-byte character set needed their heads examined, but recently a customer of ours said that they had experienced problems applying Oracle patches on databases where NLS_LENGTH_SEMANTICS is set to CHAR. Is there anything to this? Is it a known problem?

Best Answer

There's a useful page here that details any pros/cons/issues that you may encounter when setting the NLS_LENGTH_SEMANTICS parameter.

To answer your question, make sure you set NLS_LENGTH_SEMANTICS=BYTE when running any Oracle "internal" scripts. IE: patches, upgrades, anything in $ORACLE_HOME/dbms/admin.