sql >> Databasteknik >  >> RDS >> Mysql

Hur man lagrar data i unicode på hindi

Välj utf8 teckenuppsättning och utf8_general_ci sammanställning.

Uppenbarligen bör sortering av fältet (till vilket du vill lagra hinditext) vara utf8_general_ci .

För att ändra ditt tabellfält, kör

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

När du har anslutit till databasen kör du först följande sats

mysql_set_charset('utf8');

T.ex.:

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

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

För att hämta data

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

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

Innan du skriver ut någon unicode-text (säg hindi-text) i webbläsaren bör du ställa in innehållstypen för den sidan genom att lägga till en metatagg

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

T.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>

Uppdatera :

mysql_query("SET CHARACTER SET utf8") has changed to mysql_set_charset('utf8');Detta är det föredragna sättet att ändra teckenuppsättningen. Att använda mysql_query() för att ställa in det (som SET NAMES utf8) rekommenderas inte. Se http://php.net/manual/en/function. mysql-set-charset.php *



  1. Hur man skapar en parameterfråga i Access

  2. Bättre ALTER än DROP

  3. VÄNSTER JOIN endast första raden

  4. Rekonstruera Standby DB