13

我正在使用PHPMySQL应用程序。

问题是:

  1. 如何以MySQL नवीन खेतिहर उपकरण।可读格式或निलेस र पà¥à¤¬格式存储数据

  2. 当用户在文本框中输入数据并点击提交时,我们会得到不同格式的数据。MySQL如果我们转换并以可读格式存储,我们需要做什么。

4

4 回答 4

25

选择 utf8 字符集和utf8_general_ci排序规则。

显然,字段(您要存储印地语文本)的排序规则应该是utf8_general_ci.

要更改表格字段,请运行

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

连接到数据库后,首先运行以下语句

mysql_set_charset('utf8');

例如:

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

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

检索数据

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

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

在浏览器上打印任何 unicode 文本(比如印地语文本)之前,您应该必须通过添加元标记来设置该页面的内容类型

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

例如:

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

更新

mysql_query("SET CHARACTER SET utf8") has changed tomysql_set_charset('utf8'); 这是更改字符集的首选方法。不推荐使用 mysql_query() 来设置(如 SET NAMES utf8)。见http://php.net/manual/en/function.mysql-set-charset.php *

于 2012-09-15T08:46:36.927 回答
3

您只需要在表上运行以下命令。

ALTER TABLE <tablename> CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

注意:您应该使用utf8_general_ci而不是ut8_unicode_ci,因为据说它更快。 utf8_general_ci 和 utf8_unicode_ci 有什么区别

于 2014-08-06T11:53:10.923 回答
1

无需使用字符集更改表。但你的数据库应该是 utf8_unicode_ci。

连接数据库时只需要添加这一行。" mysqli_set_charset($con, 'utf8')"

    $con = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);
    mysqli_set_charset($con, 'utf8');
    mysqli_query($con, $sql);
于 2016-10-09T08:16:16.390 回答
1

将 COLLATE 转换为 utf8_general_ci 后,使用这一行 mysqli_set_charset($con, 'utf8'); 在您的查询下方的 $con 和 mysqli_query() 之间。

$con= mysqli_connect($host,$user,$pass,$db) or die('无法连接');

$sql="你的查询..";

mysqli_set_charset($con, 'utf8');

$result=mysqli_query($con,$sql);

于 2018-06-27T13:36:47.580 回答