我无法使用以下代码将阿拉伯语插入Mysql数据库。当我使用phpMyAdmin检查值时,该字段将为空。为什么会这样?
$query = "INSERT INTO table (name) VALUES ('عماد')";
mysql_query($query);
name
字段应为utf8同时,在连接到mysql之后,在执行任何其他查询(如示例中的insert语句)之前,直接使用此查询
set names 'utf8'
然后检查phpmyadmin输出,它应该是正确的
使用此行。。。。你可以插入特殊字符。
mysql_real_escape_string($query);
/**
* ALTER TABLE `myTable` CHARACTER SET utf8 COLLATE utf8_general_ci;
*
* There’s a generic way of doing by simply executing the MySQL query:
* SET NAMES utf8;
*
* ...and depending on which client/driver you’re using
* there are helper functions to do this more easily instead:
*/
// With the built in mysql functions
mysql_set_charset('utf8');
// With MySQLi
$mysqli->set_charset("utf8")
// With PDO_MySQL (as you connect)
$pdo = new PDO(
'mysql:host=localhost;dbname=test',
'username',
'password',
array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")
);
确保字段的name
collation
在PHPMyAdmin 中设置为:'utf8_unicode_ci'
转到数据库,将字段的Collation
值更改为utf8_unicode_ci
。稍后感谢
有关Java教程,请访问:Java 简介