sql >> Base de Datos >  >> RDS >> Mysql

Cómo almacenar los datos en Unicode en idioma hindi

Elija el conjunto de caracteres utf8 y utf8_general_ci colación.

Obviamente, la intercalación del campo (en el que desea almacenar el texto en hindi) debe ser utf8_general_ci .

Para modificar el campo de su tabla, ejecute

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

Una vez que se haya conectado a la base de datos, ejecute la siguiente declaración al principio

mysql_set_charset('utf8');

Por ejemplo:

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

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

Para recuperar datos

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

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

Antes de imprimir cualquier texto Unicode (por ejemplo, texto en hindi) en el navegador, debe configurar el tipo de contenido de esa página agregando una metaetiqueta

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

Por ejemplo:

<!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>

Actualizar :

mysql_query("SET CHARACTER SET utf8") has changed to mysql_set_charset('utf8'); Esta es la forma preferida de cambiar el conjunto de caracteres. No se recomienda usar mysql_query() para configurarlo (como SET NAMES utf8). Consulte http://php.net/manual/en/function. mysql-set-charset.php *