`
long546324
  • 浏览: 204219 次
  • 性别: 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存储过程读写文件[文].pdf

    Oracle 主要配置文件介绍

    系统级的环境变量一般在/etc/profile 文件中定义 在 CAMS 系统 与数据库 相关的环境变量就定义在/etc/profile 文件中 如下所示 export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/...

    oracle blob的读写(plsql)

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

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

    工作中有很多数据以txt方式存储,需要导入oracle数据库处理(方便进行计算、统计),因文件较多,不便于手工处理,所以编写此程序以便进行数据导入。已经测试过,可以将数据导入oracle。

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

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

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

    在oracle中utl_file包提供了一些操作文本文件的函数和过程,学习了一下他的基本操作 1.创建directory,并给用户授权 代码如下: –创建directory create or replace directory TESTFILE as ‘/home/oracle/zxx/test’...

    Oracle存取文件

    Oracle,文件,讀取,blob Oracle,文件,讀取,blob Oracle,文件,讀取,blob

    Oracle的UNDOTBS01.DBF文件太大的解决办法

    Oracle的UNDOTBS01.DBF文件太大的解决办法

    orcle读取文件

    Oracle读写文件操作相信大家都不陌生,下面就为您介绍Oracle读写文件bfilename的实例,希望对您学习Oracle读写文件方面能有所帮助。 Create directory让我们可以在Oracle数据库中灵活的对文件进行读写操作,极大的...

    Windows下BAT脚本实现修改本机ip、读取文件、操作oracle等内容

    Windows下BAT脚本实现修改本机ip、读取文件、操作oracle等内容

    linux中安装ORACLE10g数据库详细步骤

    2. 设置目录权限,确保 oracle 用户具有读写权限。 五、安装 ORACLE10g 数据库 1. 运行 ORACLE10g 数据库的安装程序,按照提示进行安装。 2. 安装完成后,需要配置 ORACLE10g 数据库的监听和实例。 本文详细介绍...

    oracle中读写blob字段的问题解析

    下面以程序实例说明通过JDBC操纵Oracle数据库LOB类型字段的几种情况。 先建立如下两个测试用的数据库表,Power Designer PD模型如下: 建表SQL语句为:CREATE TABLE TEST_CLOB ( ID NUMBER(3), CLOBCOL CLOB)CREATE

    sql server中的image类型的数据导出到oracle的clob字段中

    我们使用了 Java 语言和 JDBC 驱动程序来实现数据的导出,并将 Image 类型数据写到文件中,然后将文件中的数据读取出来,并将其设置到 Oracle 的 CLOB 字段中。这种方法可以帮助我们实现不同数据库管理系统之间的...

    关于Oracle数据库各种存储形式的概述

    操作系统文件是大家最常用的方式了,也是非...因为没有了操作系统这一层,所以读写起来的速度和性能是质一般的飞跃的,在某些对Oracle读写非常频繁的数据库应用中,采用裸分区形式存储数据甚至可以提高30%以上的性能。

    Oracle数据库中LOB的调优.pdf

    在Oracle数据库中,LOB数据类型的存储和优化是非常重要的,因为LOB数据类型占用的存储空间较大,且其读写操作也较慢。 在创建包含LOB字段的表时,Oracle将同时创建两个段来容纳指定的列,这两个段分别为LOBINDEX和...

    基于JSP访问ORACLE数据库BLOB字段并显示图形的解决方案.pdf

    * 该jsp文件使用JSP技术读取数据库中的数据,然后将数据显示在网页上。 知识点7:JAVA类的应用 * JAVA类可以将坐标点转换为图形,然后将图形显示在网页上。 * JAVA类可以与JSP技术结合使用,充分展示了JAVA应用的...

    Oracle的日志管理攻略

     大家都知道,文件越大,其打开和读写的开销越大。如果日志文件太大了(超过5M), 需要对它截断处理。  直接删除它,让ORACLE重新生成不是好的方法。因为ORACLE是通过一个指向文件的指针进行写操作。  在数据库...

    linux oracle 建表,表空间以及删除命令

    其中,data01 是表空间的名称,/oracle/oradata/db/DATA01.dbf 是数据文件的路径,SIZE 500M 是数据文件的初始大小,UNIFORM SIZE 128k 是指定的区尺寸。 二、建立 UNDO 表空间 UNDO 表空间是 Oracle 数据库中的一...

    oracle表空间和数据文件的详细操作(纯手工)

    内容包括: 1. 创建表空间 2. 改变表空间可用性和读写模式 3. 删除表空间 4. 创建和添加数据文件 5. 数据文件可用性 6. 移动和重命名数据文件 7. 删除数据文件 详细代码步骤;

Global site tag (gtag.js) - Google Analytics