从perl向mysql插入阿拉伯语

从perl向mysql插入阿拉伯语,mysql,perl,arabic,Mysql,Perl,Arabic,当试图从Perl将阿拉伯语插入mysql时,阿拉伯语内容会显示在数据库中,如أ™إ أکآ³أکآ´أ™إ但当我从数据库中检索值时,它将在网页中显示为ÙØØØÙ 请注意,我的数据库和表字符集是utf8,校对是utf8\u general\u ci。连接到MySQL后,尝试使用集合名称“utf8”: my $dsn = "DBI:mysql:$base_name:$mysql_host_url"; my $dbh = DBI->connect($dsn, $user_db, $passwor

当试图从Perl将阿拉伯语插入mysql时,阿拉伯语内容会显示在数据库中,如
أ™إ أکآ³أکآ´أ™إ
但当我从数据库中检索值时,它将在网页中显示为
ÙØØØÙ


请注意,我的数据库和表字符集是utf8,校对是utf8\u general\u ci。

连接到MySQL后,尝试使用
集合名称“utf8”

my $dsn = "DBI:mysql:$base_name:$mysql_host_url";
my $dbh = DBI->connect($dsn, $user_db, $password_db) or die $DBI::errstr;
$dbh->do(qq{SET NAMES "utf8"});
正如政府所说:

SET NAMES指示客户端将使用哪个字符集发送SQL 向服务器发送的语句。。。它还指定服务器应该使用的字符集 用于将结果发送回客户端


我为我的问题找到了另一个解决方案, 此解决方案适用于mysql数据库


首先,您需要确定出错的原因:将其放入数据库、从数据库获取或显示在网页中。请提供
local$Data::Dumper::Useqq=1的输出;打印(转储程序($str))
在您将其放入数据库之前以及从数据库中获取之后。此外,如果您有phpMyAdmin,使用它文本看起来正确吗?您可以向我们展示用于插入和选择它的代码吗?