Sql 如何插入BLOB值

Sql 如何插入BLOB值,sql,oracle12c,Sql,Oracle12c,我有以下表格和文件: create table files( id number, file_name varchar2(25), file_data blob); 我希望能够将位于我的计算机上的二进制文件的数据存储在此表中。但是,在将计算机上的文件转换为十六进制时,字符串太长,无法插入,因为Oracle无法处理长度大于4000的字符串文字。如何将记录插入此表中 通常您要做的是: 在应用程序中创建一个空Blob对象。 将空Blob作为行的一列插入数据库。 然后,在同一事务中,从刚刚插入的Blo

我有以下表格和文件:

create table files(
id number,
file_name varchar2(25),
file_data blob);

我希望能够将位于我的计算机上的二进制文件的数据存储在此表中。但是,在将计算机上的文件转换为十六进制时,字符串太长,无法插入,因为Oracle无法处理长度大于4000的字符串文字。如何将记录插入此表中

通常您要做的是:

在应用程序中创建一个空Blob对象。 将空Blob作为行的一列插入数据库。 然后,在同一事务中,从刚刚插入的Blob对象检索输出流。 将数据发送到输出流,直到发送完所有字节。 关闭输出流。 您可以提交事务。 将整个文件加载到内存中,然后将其插入数据库,这是一种非常糟糕的做法。改用流媒体。

这可能有帮助吗?