oracle如何插入图片,oracle 图片

oracle数据库插入图片的问题变量类型不对或者变量个数不对

1、创建表,注意:插入图片的列要定义成BLOB类型

成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站制作、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的佳县网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

create table image_lob(t_id varchar2(5) not null,t_image blob not null);

2、创建图片目录,images为目录名

create or replace directory "images" as 'f:\pic\';

3、创建存储过程,filename为图片的名字,如‘cat.jpg’

create or replace procedure img_insert(tid varchar2,filename varchar2)as

f_lob bfile;

b_lob blob;

begin

insert into image_lob(t_id,t_image)

values(tid,empty_blob())return t_image into b_lob;

f_lob:=bfilename('images',filename);

dbms_lob.fileopen(f_lob,dbms_lob.file_readonly);

dbms_lob.loadfromfile(b_lob,f_lob,

dbms_lob.getlength(f_lob));

dbms_lob.fileclose(f_lob);

commit;

end;

/

4、执行上面的存储过程,实现图片的插入

exec img_insert('1','cat.jpg');

5、查看表

select * from image_lob;

学习ORACLE插入图片,在网上看到示例如下:

system下执行

create or replace directory BlobFile as 'C:\TEMP';--路径自己改一下

grant read on directory BlobFile to scott;

scott下建立存放的表

Create Table blobTest(

filename varchar2(200),

filedesc varchar2(200),

filebody blob);

创建过程

Create Or Replace Procedure Proc_loadBlob(p_filename varchar2,p_filedesc varchar2)

Is

src_file bfile;

dst_file BLOB;

lgh_file binary_integer;

Begin

src_file := bfilename('BLOBFILE',p_filename);

insert into blobTest(filename,filedesc,filebody)

values (p_filename,p_filedesc,EMPTY_BLOB())

returning filebody into dst_file;

dbms_lob.fileopen(src_file,dbms_lob.file_readonly);

lgh_file := dbms_lob.getlength(src_file);

dbms_lob.loadfromfile(dst_file,src_file,lgh_file);

update blobTest

set filebody = dst_file

where filename = p_filename;

dbms_lob.fileclose(src_file);

End Proc_loadBlob;

执行插入:

exec Proc_loadBlob('101101.jpeg','给图片命名);

你要是非弄个id的话,可以自己建立一个序列,到时候自增就好了呀

最后给你上图

oracle用insert可以直接在表中插入图片吗?

“向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;


分享名称:oracle如何插入图片,oracle 图片
网页URL:http://hbruida.cn/article/phscdj.html