文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

数据库中如何插入修改图片BLOB字段

2024-04-02 19:55

关注

插入示例

1.     利用存储过程进行插入数据

-- 创建存储图片的表

CREATE TABLE IMAGE_LOB ( T_ID VARCHAR2 ( 5 ) NOT NULL , T_IMAGE BLOB NOT NULL );

-- 创建存储图片的目录,我这里在本地 C 盘

CREATE OR REPLACE DIRECTORY IMAGES AS 'C:\' ;

-- 通过存储过程来实现插入

CREATE OR REPLACE PROCEDURE IMG_INSERT ( TID VARCHAR2 , FILENAME VARCHAR2 ) AS

F_LOB BFILE ; -- 文件类型

B_LOB BLOB ;

BEGIN

-- 插入空的 blob : EMPTY_BLOB ()

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 ;

/

2.     调用存储过程插入图片

call IMG_INSERT ( '1' , '1.jpg' );

数据库中如何插入修改图片BLOB字段

3.     验证结果

select * from IMAGE_LOB ;

  数据库中如何插入修改图片BLOB字段

数据库中如何插入修改图片BLOB字段

修改示例

1. 通过过程进行修改

declare

l_bfile bfile ;

l_blob blob ;

begin

update IMAGE_LOB set T_IMAGE=empty_blob () where T_ID=1 return T_IMAGE into l_blob ;

-- 图片路径还在 C 盘,通过系统表 SELECT * FROM dba_directories; 查询

l_bfile:=bfilename ( 'IMAGES' , '2.jpg' );

-- 以只读的方式打开文件

dbms_lob . open ( l_bfile , dbms_lob . file_readonly );

-- 传递对象

dbms_lob . loadfromfile ( l_blob , l_bfile , dbms_lob . getlength ( l_bfile ));

-- 关闭原始文件

dbms_lob . close ( l_bfile );

commit ;

end ;

/

2. 验证结果

select * from IMAGE_LOB ;

数据库中如何插入修改图片BLOB字段

数据库中如何插入修改图片BLOB字段

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯