DBI
및 MySQL
인 perl
스크립트에서 좋은 ő 및 ű 문자로 헝가리어를 사용하고 있습니다. 모든 데이터베이스 인코딩은 UTF8이며 어디에서나 utf8을 사용합니다. 테이블이 utf8_general_ci 인코딩이고 행이 너무 utf8_general_ci입니다.Perl DBI, MySQL의 ö 및 ¨ 문자로 된 UTF8 charater 인코딩
테이블 및 행 인코딩을 utf8_hungarian_ci 및 utf8_unicode_ci로 변경하려고 시도했습니다. 이것은 도움이되지 않습니다.
PHPMyAdmin을 사용하여 행을 삽입했을 때 모든 것이 괜찮은 것으로 보이고 콘솔에 체크인 할 때도 좋습니다. 오직 Perl DBI 연결에 사용하려고 할 때만이 경우에만 '?'이 표시됩니다. '' ','ű '및'Ű '문자 대신에'문자 '를 사용할 수 있습니다.
use uft8;
use DBI
my $db = DBI->connect("dbi:mysql:dbname=...", "user", "passwd",
{mysql_enable_utf8 => 1}) || die $DBI::error;
$db->do("INSERT INTO mytable (name) VALUES ('őűŐŰ')");
my $dbh = $db->prepare("SELECT name FROM mytable;");
$dbh->execute;
while (my @this = $dbh->fetchrow_array) {
print $this[0]."\n";
}
어떤 문제가 : 여기
내 펄 스크립트입니다? DBI를위한 특별한 매개 변수 또는 설정이 있습니까? 또는
이 mysql_enable_utf8 수행해야합니다 문서에 따르면 – Mihai
를 삽입하기 전에 실행'SET NAMES UTF8',하지만 난 DBI의 전문가는 생각하지 않습니다. –