oracle - Are there any situations in which you would use NLS_LENGTH_SEMANTICS=BYTE on a Unicode database? -
having unicode (multi-byte charset) oracle database nls_length_semantics=byte seems disaster waiting happen. field validation in applications check number of characters within bounds, not byte sequence length in database’s default character encoding scheme! if you've got unicode database, there ever reason use nls_length_semantics=byte rather char?
it's legacy, think. there plenty of old applications have worked on bytes , may confused if changes. byte strings , indexes go off external app/language works in bytes going go wrong in weird , unpredictable ways if indexes redefined underneath it.
i not use byte semantics new application , agree it's not default. you're using nvarchar, avoids issue (since it's character-based).
Comments
Post a Comment