`
long546324
  • 浏览: 208745 次
  • 性别: Icon_minigender_1
  • 来自: 云南
社区版块
存档分类
最新评论

Oracle中读写文件

阅读更多
Create Table Blob_EXAMPLE (
ID number(6) primary key,
Name varchar2(20),
Resume Blob)

insert into blob_example values(1,'LONG1',empty_blob());
insert into blob_example values(2,'LONG2',empty_blob());

CREATE OR REPLACE DIRECTORY DOCS AS 'G:\Oracle\File'

grant write,read on directory docs to long1

CREATE OR REPLACE PROCEDURE update_blob_doc
(t_id number, filename varchar2 ) as
src_file BFILE;
dst_file BLOB;
lgh_file BINARY_INTEGER;
BEGIN
src_file:=BFILENAME('DOCS',filename);
Select Resume INTO dst_file FROM blob_example
Where id=t_id FOR UPDATE;
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 blob_example set resume=dst_file
where id=t_id;
dbms_lob.fileclose(src_file);
commit;
end;

CREATE OR REPLACE PROCEDURE Read_Blob_doc(
t_id number,filename varchar2) as
l_file UTL_FILE.FILE_TYPE;
l_buffer RAW(32767);
l_amount BINARY_INTEGER:=32767;
l_pos NUMBER:=1;
l_Blob Blob;
l_Blob_len Number;
BEGIN
SELECT resume Into l_Blob FROM Blob_example
WHERE id=t_id;
l_Blob_len:=dbms_lob.getlength(l_Blob);
l_file:=UTL_FILE.FOPEN('DOCS',filename,'wb',32767);
WHILE l_pos<l_Blob_len LOOP
DBMS_LOB.READ(l_Blob,l_amount,l_pos,l_buffer);
UTL_FILE.PUT_RAW(l_file,l_buffer,TRUE);
l_pos:=l_pos+l_amount;
END LOOP;
UTL_FILE.FCLOSE(l_file);
EXCEPTION
WHEN OTHERS THEN
IF UTL_FILE.IS_OPEN(l_file) THEN
UTL_FILE.FCLOSE(l_file);
END IF;
RAISE;
END;
分享到:
评论

相关推荐

    Oracle存储过程读写文件[文].pdf

    通过这种方式,Oracle存储过程可以轻松地将数据库中的数据导出到文件,或者将文件中的数据导入到数据库中,为数据交换提供了便利。 总之,Oracle的存储过程结合UTL_FILE包,能够实现对文件系统的直接操作,增强了...

    oracle读写分离(中间键Mycat)

    Oracle数据库的读写分离是一种优化策略,用于提升大型系统中数据处理能力,通过将读操作与写操作分离到不同的数据库实例上,实现高并发场景下的性能优化。在本配置文档中,我们将关注如何利用Mycat中间键实现Oracle ...

    oracle读写分离.docx

    ### Oracle读写分离详解 #### 一、读写分离概念 **读写分离**是一种数据库设计模式,旨在通过将数据库的读操作与写操作分开,从而优化系统的整体性能。这种模式下,通常会有两个或多个数据库实例:一个主数据库...

    用java编程将txt文件数据导入oracle

    Java 编程将 TXT 文件数据导入 Oracle 数据库是指使用 Java 语言编写程序将 TXT 文件中的数据导入 Oracle 数据库中,以方便进行计算、统计等操作。下面将详细介绍该知识点。 标题:用 Java 编程将 TXT 文件数据...

    C#连接ORACLE,读写,增删改查全。

    - 安装完成后,需要在C#项目中引用Oracle相关的DLL文件,例如`Oracle.DataAccess.dll`。 2. **建立连接** - 使用`OracleConnection`类创建数据库连接。在C#中,你可以创建一个实例,然后设置ConnectionString属性...

    oracle最新OCI文件.zip

    总之,“oracle最新OCI文件.zip”为开发者提供了与Oracle数据库交互的最新工具,无论是在大型企业应用还是小型项目中,都可以利用这些工具来构建高效、灵活的数据库应用程序。为了充分利用这些功能,开发者需要熟悉...

    jsp+js+oracle 实现文件上传数据库,下载到本地

    4. JDBC:通过Java与Oracle数据库交互,读写BLOB数据。 5. HTTP响应头:设置正确的响应头,指示文件类型和下载行为。 6. 安全性:防止文件上传攻击,确保下载过程的安全。 理解并掌握这些技术,可以有效地实现在Web...

    oracle blob 字段 读写 delphi

    Oracle数据库中的BLOB(Binary Large Object)字段是用来存储大量二进制数据的,例如图片、文档或音频文件。在Delphi编程环境中,处理这类数据时需要掌握特定的API调用和方法。本篇文章将深入探讨如何在Delphi中对...

    oracle中utl_file包读写文件操作实例学习

    Oracle中的UTL_FILE包是一个非常实用的工具,它允许数据库用户在Oracle服务器上进行文件的读写操作。这个包提供了多种函数和过程,使得在PL/SQL中处理文本文件变得简单。下面我们将深入探讨如何使用UTL_FILE进行文件...

    oracle blob的读写(plsql)

    oracle中用来存储大数据的BLOB(图片,文本,文件等)的 读写与复制方法

    oracle11存储过程读写文件操作.docx

    ..oracle11存储过程读写文件操作.docx

    oracle11存储过程读写文件操作.pdf

    ..oracle11存储过程读写文件操作.pdf

    Oracle存取文件

    在Oracle数据库中,Blob(Binary Large Object)是一种专门用于存储二进制大数据的对象类型,它可以有效地存储诸如图像、音频文件、视频文件以及任何其他类型的二进制数据。Blob类型在数据库设计中非常常见,特别是在...

    oracle案例:VC下的Oracle数据库读写操作案例

    安装完毕后,确保VC项目中正确引用了对应的库文件,例如oci.lib和oci.dll。 接下来,我们关注数据库连接部分。在VC中,可以使用ADO(ActiveX Data Objects)或者OCI(Oracle Call Interface)API来建立连接。ADO...

    在oracle9i如何在PL-SQL中读写文件.doc

    在Oracle 9i中,利用PL/SQL进行文件读写是一项高级功能,主要通过UTL_FILE包实现。本文将深入探讨这一主题,包括UTL_FILE包的使用方法、相关函数和异常处理,以及如何创建存储过程来执行文件读写操作。 ### UTL_...

    ORACLE配置文件优化

    在Oracle数据库管理中,配置文件优化是提升系统性能的关键步骤之一。主要涉及的文件有INIT.ORA、SPFILE和PFILE,它们都是控制数据库运行的重要参数文件。了解并正确配置这些文件,能有效提高数据库的运行效率,降低...

    C#访问oracle数据库类,带blob字段读写

    本篇文章将深入探讨如何使用C#语言访问Oracle数据库,并重点讲解处理Blob(Binary Large Object)字段的读写操作。 首先,让我们理解C#访问Oracle数据库的基本原理。Oracle数据库提供了一个名为ODP.NET(Oracle ...

    Postgresql连接oracle驱动并实现读写

    ### Postgresql连接Oracle数据库并通过oracle_fdw驱动实现读写操作 #### 一、概述 本文档将详细介绍如何在CentOS 6.2环境下通过PostgreSQL 9.5.6使用`oracle_fdw`驱动程序来连接Oracle 11.2客户端,并实现数据的...

Global site tag (gtag.js) - Google Analytics