oracle 用insert可以直接在表中插入图片吗?(字段类型为 blob)

如题,如果能的话,求实例... 如题,如果能的话,求实例 展开
 我来答
牛角山麦子
推荐于2017-09-14 · TA获得超过1554个赞
知道小有建树答主
回答量:651
采纳率:75%
帮助的人:539万
展开全部
你baidu一下 “向blob插入图片” 会获得好多结果,比如

将图片插入到BLOB类型的字段中

建立一个表:create table a(a blob);
建立一个目录:create directory tmp as 'e:\';
建立一个PL/SQL块:
declare
b_file bfile;
b_lob blob;
begin
insert into a(a) values(empty_blob()) return a into b_lob;
--为了使PL/SQL编译成功,必须先为该列插入一个empty_blob() 值,return a into b_lob将该列与一个blog类型的变量绑定在一起,以后只要为b_lob赋值,即等于将该值插入了表中。
b_file:=bfilename('tmp','filename.jpg');
--tmp是建立的文件所在的目录,filename.jpg是文件名;将文件转换为bfile类型
dbms_lob.open(b_file,dbms_lob.file_readonly);--将b_file 以只读的方式打开
dbms_lob.loadfromfile(b_lob,b_file,dbms_lob.getlength(b_file));-- 将b_file中的内容转换到b_lob中
dbms_lob.close(b_file);
commit;
end;
久落江边
2018-04-17 · TA获得超过1.6万个赞
知道小有建树答主
回答量:92
采纳率:94%
帮助的人:2.6万
展开全部

“向blob插入图片” 会获得好多结果,比如

将图片插入到BLOB类型的字段中

建立一个表:create table a(a blob);

建立一个目录:create directory tmp as 'e:\';

建立一个PL/SQL块:

declare

b_file bfile;

b_lob blob;

begin

insert into a(a) values(empty_blob()) return a into b_lob;

--为了使PL/SQL编译成功,必须先为该列插入一个empty_blob() 值,return a into b_lob将该列与一个blog类型的变量绑定在一起,以后只要为b_lob赋值,即等于将该值插入了表中。

b_file:=bfilename('tmp','filename.jpg');

--tmp是建立的文件所在的目录,filename.jpg是文件名;将文件转换为bfile类型

dbms_lob.open(b_file,dbms_lob.file_readonly);--将b_file 以只读的方式打开

dbms_lob.loadfromfile(b_lob,b_file,dbms_lob.getlength(b_file));-- 将b_file中的内容转换到b_lob中

dbms_lob.close(b_file);

commit;

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xpcn04
2013-07-12 · TA获得超过965个赞
知道大有可为答主
回答量:2978
采纳率:0%
帮助的人:1589万
展开全部
可以。
不过你要把图片数据转为byte[].然后正常的插入就可以了。
在任何项目都不这么推荐。
太占数据的空间。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式