Как вставить двоичные данные в столбец BLOB с помощью Class::DBI?
Я хочу создать новый объект, используя Class::DBI. Одним из полей этого объекта является тип BLOB. У меня есть файловый дескриптор, который я хочу использовать для этих данных, но, очевидно, просто сделать это не работает:
my $item = My::Class::DBI::Class->insert({
foo => $bar,
biz => $baz,
blob => $my_filehandle
});
Есть какой-то трюк, который я пропускаю?
Спасибо!
1 ответ
Решение
Вы должны прочитать дескриптор файла и вставить его.
my $blob = do {local $/; <$my_filehandle>};
my $item = My::Class::DBI::Class->insert({
foo => $bar,
biz => $baz,
blob => $blob,
});