如何用SQL语句将Oracle数据库上的BLOB数据下载到客户机上 20
各位网友大家好,我需要利用SQL或者PL/SQL将Oracle数据库中的BLOB数据下载到客户机。客户机和服务器在同一个局域网,目前在客户机上可以远程登录Oracle,也...
各位网友大家好,我需要利用SQL或者PL/SQL将Oracle数据库中的BLOB数据下载到客户机。客户机和服务器在同一个局域网,目前在客户机上可以远程登录Oracle,也可以运行PL/SQL命令进行BLOB数据保存,只是数据都保存在服务器上了,我该怎么写语句才能保存到客户机上呢?谢谢网友的解答。
附:我的SQL语句大致如下:
create directory "download" as 'c:\download';
create or replace procedure test is l_file utl_file.file_type; l_lob blob; l_offset int:= 1; l_amount int:= 32767; l_len int:= 0; l_buffer raw(32767);
begin select photo into l_lob from t_blob where id = 1; l_file:= utl_file.fopen('download', test.txt', 'w', 32767); l_len:= dbms_lob.getlength(l_lob); while l_offset< l_len loop dbms_lob.read(l_lob, l_amount, l_offset, l_buffer); utl_file.put_raw(l_file, l_buffer, true); l_offset:= l_offset+ l_amount; end loop; utl_file.fclose(l_file);end test;
/
exec test; 展开
附:我的SQL语句大致如下:
create directory "download" as 'c:\download';
create or replace procedure test is l_file utl_file.file_type; l_lob blob; l_offset int:= 1; l_amount int:= 32767; l_len int:= 0; l_buffer raw(32767);
begin select photo into l_lob from t_blob where id = 1; l_file:= utl_file.fopen('download', test.txt', 'w', 32767); l_len:= dbms_lob.getlength(l_lob); while l_offset< l_len loop dbms_lob.read(l_lob, l_amount, l_offset, l_buffer); utl_file.put_raw(l_file, l_buffer, true); l_offset:= l_offset+ l_amount; end loop; utl_file.fclose(l_file);end test;
/
exec test; 展开
2013-12-16 · 知道合伙人软件行家
renfengjun1986
知道合伙人软件行家
向TA提问 私信TA
知道合伙人软件行家
采纳数:925
获赞数:1553
中国地质调查局特聘数据库专家 CSDN博客专家 百度知道数据库行家 炼数成金版主 想了解更多请关注我的博客:
向TA提问 私信TA
关注
展开全部
1、客户机上弄个samba共享目录。服务器端映射到本地目录。directory指向这个本地目录。
2、客户机使用ftp,plsql有一些ftp支持包。
3、plsql调用服务器端的dos 或者 shell 命令。
4、plsql使用java存储过程解决远程传输的问题。
解决方法很多,第一种最简单。就是映射远程目录即可。
2、客户机使用ftp,plsql有一些ftp支持包。
3、plsql调用服务器端的dos 或者 shell 命令。
4、plsql使用java存储过程解决远程传输的问题。
解决方法很多,第一种最简单。就是映射远程目录即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询