如何使用Class :: DBI将二进制数据插入BLOB列?

pka*_*ing 2 perl blob class-dbi

我想使用Class :: DBI创建一个新对象.该对象的一个​​字段是BLOB类型.我有一个文件句柄我想用于这个数据,但显然,这样做是行不通的:

my $item = My::Class::DBI::Class->insert({
        foo       => $bar,
        biz       => $baz,
        blob         => $my_filehandle
        });
Run Code Online (Sandbox Code Playgroud)

我缺少一些技巧吗?

谢谢!

Leo*_*ans 5

你必须读出文件句柄,并插入它.

my $blob = do {local $/; <$my_filehandle>};
my $item = My::Class::DBI::Class->insert({
        foo       => $bar,
        biz       => $baz,
        blob         => $blob,
        });
Run Code Online (Sandbox Code Playgroud)