Scalable Database Server, HiRDB Version 8 Description
In a data comparison, one double-byte space character and two single-byte space characters will be recognized as different data. Therefore, table data containing a mixture of double-byte and single-byte space characters can produce incorrect retrieval results.
- Example
- The following data are recognized as being different:
The space conversion facility enables double-byte space characters and single-byte space characters to be intermixed in table data.
The double-byte space character being discussed here is coded as shown as follows. Two single-byte space characters are coded as X'2020'.
- Shift-JIS Kanji Code: X'8140'
- Unicode (UTF-8)*: X'E38080'
- * NCHAR and NVARCHAR cannot be used if the character encoding is Unicode (UTF-8).
- Organization of this section
- (1) Space conversion levels
- (2) Setting the space conversion level
(1) Space conversion levels
As shown in Table 7-6, three levels of space character conversion are provided by the space conversion facility.
Table 7-6 Space conversion levels
Level |
Explanation |
Level 0 |
No space conversion. |
Level 1 |
Converts as follows data spaces that occur in literals, embedded variables, and ? parameters in the data manipulation SQL or data spaces that are stored by utilities:
- When a character string literal is being handled as a national character string literal, two single-byte space characters in succession are converted into one double-byte space character; in the case of a single occurrence of a single-byte space, no conversion is performed.
- When a character string literal is being handled as a mixed character string literal, one double-byte space character is converted into two single-byte space characters.
- During storage of data in a national character string-type column or during comparison of data with a national character string-type value expression, two single-byte space characters in succession in an embedded variable or ? parameter are converted into one double-byte space character; in the case of a single occurrence of a single-byte space, no conversion is performed.
- During storage of data in a mixed character string-type column or during comparison of data with a mixed character string-type value expression, one double-byte space character is converted into two single-byte space characters.
|
Level 3 |
Adds the following processing to the processing of space conversion level 1:
- During retrieval of data in a national character string-type value expression, one double-byte space character is converted into two single-byte space characters.
|
Figure 7-20 illustrates Level 1 processing. Figure 7-21 illustrates Level 3 processing.
Figure 7-20 Level 1 processing
Figure 7-21 Level 3 processing
(2) Setting the space conversion level
The desired space conversion level can be specified in the following operands:
- pd_space_level operand in the system common definition
- PDSPACELVL operand in the client environment definition
- spacelvl operand in the option statement of the database load utility (pdload)
- spacelvl operand in the option statement of the database reorganization utility (pdrorg)
For details about using the space conversion facility, see the HiRDB Version 8 System Operation Guide.
All Rights Reserved. Copyright (C) 2007, Hitachi, Ltd.