怎样在Oracle中插入图片并显示

来源:互联网 发布:怎样才能做好淘宝店 编辑:程序博客网 时间:2024/05/21 15:39

Oracle中插入图片并显示(用BLOB类型)

要在oracle里面存入图片 用 blob类型

首先在数据库里建立:

--连接到管理员
conn sys/tbsoft as sysdba;

--为scott用户授权

grant create any directory to scot

--回到scott用户
conn scott/tiger;

--创建存储图片的表
CREATE TABLE IMAGE_LOB (T_ID VARCHAR2 (5) NOT NULL,T_IMAGE BLOB NOT NULL);

--创建存储图片的目录
CREATE OR REPLACE DIRECTORY IMAGES AS 'C:\picture';

--在c:下自己建一个叫picture的文件夹

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;
--插入空的blob
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;
/


--在C:\picture下放一张图片1.gif

--将该图片存入表
call IMG_INSERT('1','1.gif');

原创粉丝点击