Это не для цитирования вообще.Это строковое представление в кавычках Perl, также известное как PERLQQ
, из серии октетов.Числа восьмеричные.
Эти байты по большей части кодируют UTF-8, но данные содержат две ошибки.Похоже, одна половина персонажа каждый так или иначе отвалился.Я пометил его стрелками чуть ниже.
my $octets = "this is \321\213\321\213\321\213\321\213\321 \321\201\320\277\320\260\321\200\321\202\320\260\321";
# ↑↑↑↑ ↑↑↑↑
Это недействительно в UTF-8, но может быть исправлено.Мы помещаем символ замены Unicode .
use Encode qw(decode);
my $characters = decode 'UTF-8', $octets, Encode::FB_DEFAULT | Encode::LEAVE_SRC;
# this is ыыыы� спарта�
Теперь эту строку символов можно просто вставить в базу данных, как обычно.DSN в вызове connect
для DBI или DBIx :: Class должен включать атрибут mysql_enable_utf8
.
connect('DBI:mysql:foobar;mysql_enable_utf8=1', …, …);