Character String Literal Character Set and Collation 10.3.6 Character String Literal Character Set and Collation 1938 •A binary string with  binary  character set and its default collation (that is,  binary ): •A nonbinary string with  utf8mb4  character set and its default collation (that is,  utf8mb4_0900_ai_ci ): •A nonbinary string with  latin1  character set and  latin1_german1_ci  collation: •Otherwise (neither  _charset_name  nor  COLLATE  collation_name  is specified), the connection default character set and collation given by the  character_set_connection  and collation_connection  system variables are used. •If  _charset_name  is not specified but  COLLATE  collation_name  is specified, the connection default character set given by the  character_set_connection  system variable and collation collation_name  are used.  collation_name  must be a permitted collation for the connection default character set. •If  _charset_name  is specified but  COLLATE  is not specified, character set  charset_name  and its default collation are used. To see the default collation for each character set, use the  SHOW CHARACTER SET  statement or query the  INFORMATION_SCHEMA CHARACTER_SETS  table. •If both  _charset_name  and  COLLATE  collation_name  are specified, character set  charset_name and collation  collation_name  are used.  collation_name  must be a permitted collation for charset_name . Every character string literal has a character set and a collation. For the simple statement  SELECT ’ string ’ , the string has the connection default character set and collation defined by the  character_set_connection  and  collation_connection  system variables. A character string literal may have an optional character set introducer and  COLLATE  clause, to designate it as a string that uses a particular character set and collation: [_ charset_name ]’ string ’ [COLLATE  collation_name ] The  _ charset_name  expression is formally called an  introducer . It tells the parser, “the string that follows uses character set  charset_name .”  An introducer does not change the string to the introducer character set like  CONVERT()  would do. It does not change the string value, although padding may occur. The introducer is just a signal. See Section 10.3.8, “Character Set Introducers” . Examples: Character set introducers and the  COLLATE  clause are implemented according to standard SQL specifications. MySQL determines the character set and collation of a character string literal in the following manner: Examples: SELECT _latin1’Müller’ COLLATE latin1_german1_ci; SELECT _utf8mb4’Müller’; SELECT ’abc’; SELECT _latin1’abc’; SELECT _binary’abc’; SELECT _utf8mb4’abc’ COLLATE utf8mb4_danish_ci;