| 11.3 Déterminer le jeu de caractères et la collation par défaut
 11 Jeux de caractères et Unicode
 Manuel de Référence MySQL 4.1 : Version Française
 
 . Jeu de caractères et collation serveur
 . Jeu de caractères et collation de base de données
 . Jeu de caractères de tables et collation
 . Jeu de caractères de colonne et collation
 ->Exemples d'attribution de jeu de caractères et collation
 . Jeux de caractères et collations de connexion
 . Jeu de caractères et collation des chaînes littérales
 . Clause COLLATE dans différentes parties d'une requête SQL
 . COLLATE clause de précédence
 . Opérateur BINARY
 . Quelques cas spéciaux où la détermination de la collation est difficile
 . Les collation doivent correspondre au bon jeu de caractères
 . Un exemple de l'effet de collation
 
 
 | 
  11.3.5 Exemples d'attribution de jeu de caractères et collation Les exemples suivants montrent comment MySQL détermine le jeu de caractère 
par défaut et les valeurs de collation. 
Exemple 1 : définition de table et colonne
 
 Vous avez ici une colonne avec un jeu de caractères  
latin1
 
et une collation  
latin1_german1_ci
 . La définition est explicite,
c'est donc direct. Veuillez noter qu'il n'y a pas de problème à stocker 
une colonne  
latin1
  dans une table  
latin2
 . 
Exemple 2 : définition de table et colonne| 
CREATE TABLE t1(
 c1 CHAR(10) CHARACTER SET latin1 COLLATE latin1_german1_ci
 ) DEFAULT CHARACTER SET latin2 COLLATE latin2_bin;
 | 
 Cette fois-ci nous avons une colonne avec un jeu de caractères 
 
latin1
  et une collation par défaut. Maintenant, bien que cela
puisse sembler naturel, la collation par défaut n'est pas spécifiée au niveau
de la table. A la place, comme la collation par défaut de  
latin1
 
est toujours  
latin1_swedish_ci
 , la colonne  
c1
  aura 
la collation  
latin1_swedish_ci
  (et non  
latin1_danish_ci
 ).| 
CREATE TABLE t1(
 c1 CHAR(10) CHARACTER SET latin1
 ) DEFAULT CHARACTER SET latin1 COLLATE latin1_danish_ci;
 | 
 
Exemple 3 : définition de table et colonne
 Nous avons une colonne avec un jeu de caractères par défaut
et une collation par défaut. Dans ces conditions, MySQL regarde
au niveau de la table pour déterminer le jeu de caractères et 
la collation. Par conséquent le jeu de caractères 
de la colonne  
c1
  est  
latin1
  et sa collation 
est   
latin1_danish_ci
 . 
Exemple 4: définition de base, table et colonne| 
CREATE TABLE t1(
 c1 CHAR(10)
 ) DEFAULT CHARACTER SET latin1 COLLATE latin1_danish_ci;
 | 
 Nous créons une colonne sans préciser son jeu de caractère ni sa collation.
Nous ne spécifions pas non plus de jeu de caractères ni de collation au niveau
de la table. Dans ces conditions, MySQL cherche au niveau de la base de données.
(La configuration de la base de donnée devient celle de la table, et par
conséquent celle de la colonne.) Donc le jeu de caractères de colonne  
c1
 
est  
latin2
  et sa collation est  
latin2_czech_ci
 .| 
CREATE DATABASE d1 DEFAULT CHARACTER SET latin2 COLLATE latin2_czech_ci;USE d1;
 CREATE TABLE t1
 (
 c1 CHAR(10)
 );
 | 
 |