Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment stocker les données en unicode en langue hindi

Choisissez le jeu de caractères utf8 et utf8_general_ci classement.

De toute évidence, le classement du champ (dans lequel vous souhaitez stocker du texte en hindi) doit être utf8_general_ci .

Pour modifier votre champ de table, exécutez

ALTER TABLE `<table_name>` CHANGE `<field_name>` `<field_name>` VARCHAR(100) 
CHARSET utf8 COLLATE utf8_general_ci DEFAULT '' NOT NULL;

Une fois que vous êtes connecté à la base de données, exécutez d'abord l'instruction suivante

mysql_set_charset('utf8');

Ex :

//setting character set
mysql_set_charset('utf8');

//insert Hindi text
mysql_query("INSERT INTO ....");

Pour récupérer des données

//setting character set
mysql_set_charset('utf8');

//select Hindi text
mysql_query("SELECT * FROM ....");

Avant d'imprimer du texte unicode (par exemple du texte en hindi) sur le navigateur, vous devez définir le type de contenu de cette page en ajoutant une balise META

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Ex :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Example Unicode</title>
</head>

<body>
<?php echo $hindiText; ?>
</body>
</html>

Mettre à jour :

mysql_query("SET CHARACTER SET utf8") has changed to mysql_set_charset('utf8'); C'est la méthode préférée pour changer le jeu de caractères. L'utilisation de mysql_query() pour le définir (comme SET NAMES utf8) n'est pas recommandée. Voir http://php.net/manual/en/function. mysql-set-charset.php *