知识大全 教你快速掌握Oracle数据库中的bfile

Posted 文件

篇首语:无志山压头,有志人搬山。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 教你快速掌握Oracle数据库中的bfile相关的知识,希望对你有一定的参考价值。

教你快速掌握Oracle数据库中的bfile  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  具体步骤如下

   先在oracle数据库中下面我们建立一个目录别名 用于将文件定位指针映射到文件系统

  

  create DIRECTORY tmpdir AS /tmp ;

  tmpdir表示逻辑目录名 /tmp 是实际目录 注意该目录oracle应该有读权限 然后根据需要授权

  

  GRANT READ ON DIRECTORY bfile_dir TO scott; 建立一个含有bfile字段的表 create table bfiletest(id number( ) fname bfile); 建立一个含有BLOB字段的表 create table blobtest(id number( ) ablob blob);

   插入数据

  这里需要使用bfilename来进行bfile字段的insert 或者 update操作

  

  INSERT INTO bfiletest VALUES ( BFILENAME ( tmpdir tmptest ));

  bfilename的参数 是DIRECTORY名 参数 是文件名 注意 这一行中插入的是

  一个指向/tmp/tmptest的文件定位指针映射 不是文件本身

   读取bfile

  通过使用dbms_lob包进行可以对bfile读入到blob/clob对象中操作(只读)

  

  CREATE OR REPLACE PROCEDURE loadLOBFromBFILE_proc( TID IN NUMBER rfilename in varchar rfiledir in varchar upmessage out varchar ) AS Dest_loc BLOB; Src_loc BFILE; BEGIN INSERT INTO BLOBTEST(ID ABLOB) VALUES(TID EMPTY_BLOB()) RETURN ABLOB INTO DEST_LOC; Src_loc := BFILENAME(rfiledir rfilename); /* 如果bfile文件实际存在 */ IF (DBMS_LOB FILEEXISTS(Src_loc) != ) THEN /* 打开bfile源文件 */ DBMS_LOB OPEN(Src_loc DBMS_LOB LOB_READONLY); /* 打开目标blob: */ DBMS_LOB OPEN(Dest_loc DBMS_LOB LOB_READWRITE); /*从文件中装入 */ DBMS_LOB LOADFROMFILE(Dest_loc Src_loc DBMS_LOB GETLENGTH(Src_loc)); /* 记得关闭: */ DBMS_LOB CLOSE(Dest_loc); DBMS_LOB CLOSE(Src_loc); MIT; upmessage := ; END IF; EXCEPTION WHEN OTHERS THEN ROLLBACK; upmessage := 操作失败 ; END;

cha138/Article/program/Oracle/201311/18077

相关参考

知识大全 教你快速掌握一个简单的Oracle定时任务

教你快速掌握一个简单的Oracle定时任务  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!一在PLS

知识大全 教你轻松掌握Oracle数据库的后备和恢复

教你轻松掌握Oracle数据库的后备和恢复  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  当我们

知识大全 教你快速掌握DB2数据库创建外键时的选项

教你快速掌握DB2数据库创建外键时的选项  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 快速掌握Oracle数据库游标的使用方法

快速掌握Oracle数据库游标的使用方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  显式游标

知识大全 如何使用Oracle的BFILE

如何使用Oracle的BFILE  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!如何使用Oracle

知识大全 如何掌握Oracle中的时间间隔型数据

如何掌握Oracle中的时间间隔型数据  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在i版本以

知识大全 教你快速掌握如何使用Opatch打补丁

教你快速掌握如何使用Opatch打补丁  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在实际的工

知识大全 教你轻松掌握Oracle9i里指针共享的增强

教你轻松掌握Oracle9i里指针共享的增强  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在O

知识大全 教你设计大型Oracle数据库

教你设计大型Oracle数据库  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本文教你如何设计大

知识大全 教你删除Oracle数据库中重复没用的数据

教你删除Oracle数据库中重复没用的数据  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在对数