(mysql.info.gz) Charset-literal
Info Catalog
(mysql.info.gz) Charset-connection
(mysql.info.gz) Charset-defaults
(mysql.info.gz) Charset-collate
10.3.7 Character String Literal Character Set and Collation
-----------------------------------------------------------
Every character string literal has a character set and a collation,
which may not be null.
A character string literal may have an optional character set
introducer and `COLLATE' clause:
[_CHARSET_NAME]'STRING' [COLLATE COLLATION_NAME]
Examples:
SELECT 'STRING';
SELECT _latin1'STRING';
SELECT _latin1'STRING' COLLATE latin1_danish_ci;
For the simple statement `SELECT 'STRING'', the string has the character
set and collation defined by the `character_set_connection' and
`collation_connection' system variables.
The `_CHARSET_NAME' expression is formally called an _introducer_. It
tells the parser, "the string that is about to follow is in character
set `X'." Because this has confused people in the past, we emphasize
that an introducer does not cause any conversion, it is strictly a
signal that does not change the string's value. An introducer is also
legal before standard hex literal and numeric hex literal notation
(`x'LITERAL'' and `0xNNNN'), and before `?' (parameter substitution
when using prepared statements within a programming language interface).
Examples:
SELECT _latin1 x'AABBCC';
SELECT _latin1 0xAABBCC;
SELECT _latin1 ?;
MySQL determines a literal's character set and collation thus:
* If both _X and `COLLATE Y' were specified, then character set X
and collation Y
* If _X is specified but `COLLATE' is not specified, then character
set X and its default collation
* Otherwise, the character set and collation given by the
`character_set_connection' and `collation_connection' system
variables
Examples:
* A string with `latin1' character set and `latin1_german1_ci'
collation:
SELECT _latin1'Mu"ller' COLLATE latin1_german1_ci;
* A string with `latin1' character set and its default collation
(that is, `latin1_swedish_ci'):
SELECT _latin1'Mu"ller';
* A string with the connection default character set and collation:
SELECT 'Mu"ller';
Character set introducers and the `COLLATE' clause are implemented
according to standard SQL specifications.
Info Catalog
(mysql.info.gz) Charset-connection
(mysql.info.gz) Charset-defaults
(mysql.info.gz) Charset-collate
automatically generated byinfo2html