DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(mysql.info.gz) Character arrays

Info Catalog (mysql.info.gz) Adding character set (mysql.info.gz) Localisation (mysql.info.gz) String collating
 
 5.8.4 The Character Definition Arrays
 -------------------------------------
 
 `to_lower[]' and `to_upper[]' are simple arrays that hold the lowercase
 and uppercase characters corresponding to each member of the character
 set.  For example:
 
      to_lower['A'] should contain 'a'
      to_upper['a'] should contain 'A'
 
 `sort_order[]' is a map indicating how characters should be ordered for
 comparison and sorting purposes. Quite often (but not for all character
 sets) this is the same as `to_upper[]', which means that sorting will be
 case-insensitive. MySQL will sort characters based on the values of
 `sort_order[]' elements.  For more complicated sorting rules, see the
 discussion of string collating in  String collating.
 
 `ctype[]' is an array of bit values, with one element for one character.
 (Note that `to_lower[]', `to_upper[]', and `sort_order[]' are indexed
 by character value, but `ctype[]' is indexed by character value + 1.
 This is an old legacy convention to be able to handle `EOF'.)
 
 You can find the following bitmask definitions in `m_ctype.h':
 
      #define _U      01      /* Uppercase */
      #define _L      02      /* Lowercase */
      #define _N      04      /* Numeral (digit) */
      #define _S      010     /* Spacing character */
      #define _P      020     /* Punctuation */
      #define _C      040     /* Control character */
      #define _B      0100    /* Blank */
      #define _X      0200    /* heXadecimal digit */
 
 The `ctype[]' entry for each character should be the union of the
 applicable bitmask values that describe the character.  For example,
 `'A'' is an uppercase character (`_U') as well as a hexadecimal digit
 (`_X'), so `ctype['A'+1]' should contain the value:
 
      _U + _X = 01 + 0200 = 0201
 
Info Catalog (mysql.info.gz) Adding character set (mysql.info.gz) Localisation (mysql.info.gz) String collating
automatically generated byinfo2html