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

时间:2008-12-16 00:50:55

标签: perl blob class-dbi

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

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

我缺少一些技巧吗?

谢谢!

1 个答案:

答案 0 :(得分:5)

你必须读出文件句柄,然后插入。

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