【发布时间】:2012-10-20 18:17:40
【问题描述】:
我的数据库 (MySql) 有一个 utf8_general 排序规则。我正在从数据库访问数据并显示一个网页(用 Perl 开发),它显示了具有不同字符的瑞典字符(ä、å、ö)。我检查了 Mysql 数据库,在那里我可以看到带有 ä,å,ö 字符的数据。访问数据时似乎存在编码问题。连接数据库时,使用以下代码
my($dbh) = DBI->connect($config{'dbDriver'},$config{'dbUser'},$config{'dbPass'}) or die "Kunde inte ansluta till $config{'dataSource'}: " . $DBI::errstr;
$dbh->{'mysql_enable_utf8'} = 1;
$dbh->do('set names utf8');
【问题讨论】:
-
“访问该数据时出现问题”不足以描述问题。
-
我的意思是,访问数据时存在一些编码问题。我也更新了我的问题。
-
如何准确地显示字符?你的网页是什么编码的?
-
我在我的网页中使用 utf8。 "use encoding qw(utf8); use open qw(:std); use Encode qw/is_utf8 decode/; "并且字符呈现为"������?"
-
那么您确实从数据库中获取了错误格式的数据(可能是 ISO-8859-1)