`
sjw_kj
  • 浏览: 13069 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
文章分类
社区版块
存档分类

Oracle 9.2.0.1下PL/SQL对文件的操作

阅读更多
在Oracle中,使用PL/SQL编写存储过程是一种常用手法。也经常会遇到文件读写的问题,Oracle的PL/SQL可以对系统文件进行读写增删等操作,这里来给出我的做法。

首先,需要增加对系统文件的目录的读写权限,比如现在需要增加对“c:\temp”下目录的文件操作权限,当前操作用户名为TEST。首先定义一个文件目录的别名。

CREATE OR REPLACE DIRECTORY
UTL_FILE_DIR AS
'c:\temp';

然后在管理员权限下给TEST用户增加操作目录的操作权限

GRANT READ, WRITE ON DIRECTORY UTL_FILE_DIR TO TEST WITH GRANT OPTION;

这样,当前用户下就有了对'c:\temp'目录的读写权限。

下面给出一个读文件的例子

G_FILEUTL_FILE.FILE_TYPE;
G_LINEVARCHAR2(1600);
G_FILEPATHVARCHAR2(20) := 'UTL_FILE_DIR';--ファイルパス
G_FILENAMEVARCHAR2(20) := 'test.txt';--ファイル名称
BEGIN


G_FILE := UTL_FILE.FOPEN(G_FILEPATH, G_FILENAME, 'R');
LOOP
BEGIN
--ファイルデータを取得する
UTL_FILE.GET_LINE(G_FILE, G_LINE, 2000);

DBMS_OUTPUT.PUT_LINE(LENGTHB(G_LINE));
EXCEPTION
WHEN NO_DATA_FOUND THEN
EXIT;
END;

END LOOP;
--ファイルをCLOSED
UTL_FILE.FCLOSE(G_FILE);

END;

这样就可以对test.txt文件的读取操作,读写缓存是1023个字节,如果文件一行超过了1023个字节,则会文件读写错误。在Oracle9i以后在打开文件的时候多了一个参数,也就是文件读取缓存的参数,如下所示

G_FILE := UTL_FILE.FOPEN(G_FILEPATH, G_FILENAME, 'R', 3000);

这样,读写缓存就达到了3000,当文件超过3000行的话就会产生错误。在3000行以内则会顺利读写。

分享到:
评论

相关推荐

    判断oracle版本位数的方法

    /oracle92/app/oracle/product/9.2.0.1/bin/oracle: ELF 64-bit MSB executable SPARCV9 Version 1, dynamically linked, not stripped 2)SQL> select * from v$version; BANNER -------------------------------...

    sqldeveloper-21.4.3.x64+jdk1.8

    该工具可以连接任何 Oracle 9.2.0.1 或者以上版本的 Oracle 数据库,支持 Windows、Linux 和 Mac OS X 系统。 Oracle SQL Developer是针对Oracle数据库的交互式开发环境(IDE)。 Oracle SQL Developer简化了Oracle...

    sqldeveloper pat6

    Oracle SQL Developer 是一个免费非开源的用以开发数据库应用程序的图形化工具,使用 SQL Developer 可以浏览数据库对象、运行 SQL 语句和脚本、编辑和调试 PL/SQL 语句。另外还可以创建执行和保存报表。该工具可以...

    sqldeveloper part3

    Oracle SQL Developer 是一个免费非开源的用以开发数据库应用程序的图形化工具,使用 SQL Developer 可以浏览数据库对象、运行 SQL 语句和脚本、编辑和调试 PL/SQL 语句。另外还可以创建执行和保存报表。该工具可以...

    sqldeveloper part4

    Oracle SQL Developer 是一个免费非开源的用以开发数据库应用程序的图形化工具,使用 SQL Developer 可以浏览数据库对象、运行 SQL 语句和脚本、编辑和调试 PL/SQL 语句。另外还可以创建执行和保存报表。该工具可以...

    sqldeveloper part5

    Oracle SQL Developer 是一个免费非开源的用以开发数据库应用程序的图形化工具,使用 SQL Developer 可以浏览数据库对象、运行 SQL 语句和脚本、编辑和调试 PL/SQL 语句。另外还可以创建执行和保存报表。该工具可以...

    sqldeveloper part1

    Oracle SQL Developer 是一个免费非开源的用以开发数据库应用程序的图形化工具,使用 SQL Developer 可以浏览数据库对象、运行 SQL 语句和脚本、编辑和调试 PL/SQL 语句。另外还可以创建执行和保存报表。该工具可以...

    sqldeveloper part2

    Oracle SQL Developer 是一个免费非开源的用以开发数据库应用程序的图形化工具,使用 SQL Developer 可以浏览数据库对象、运行 SQL 语句和脚本、编辑和调试 PL/SQL 语句。另外还可以创建执行和保存报表。该工具可以...

    pl/sql操作手册

    pl/sql 7.1操作手册,中文,总共239页 目录 目录..............................................................................................................................................................

    sqldeveloper64-3.2.20.09.87-no-jre

    该工具可以连接任何 Oracle 9.2.0.1 或者以上版本的 Oracle 数据库,支持 Windows、Linux 和 Mac OS X 系统。 提供一个新的查询生成器,DBA navigator 和附表建设者,广泛迁移工具和额外的扩展更新; Data Modeler中...

    精通Oracle.10g.PLSQL编程

    <br> 前言 第1章 PL/SQL综述 1.1 SQL简介 1.2 PL/SQL简介 1.3 Oracle 10g PL/SQL新特征 第2章 PL/SQL开发工具 2.1 SQL*Plus 2.2 PL/SQL Developer 2.3 Procedure ...

    本机不安装ORACLE直接连接服务器上的ORACLE

    我下载的instant client版本为10.2.0.2.0, 测试了联接到oracle 9.2.0.4和oracle 10.2.0.1. Instant Client中不包含tnsping, exp/imp, rman, netca等工具. 如果需要这些工具则需要安装oracle client

    Oracle SQL Developer 3.1.07.42[图形化数据库发开应用]

    Oracle SQL Developer 是一个免费非开源的用以开发数据库应用程序的图形化工具,使用 SQL Developer 可以浏览数据库对象、运行 SQL 语句和脚本、编辑和调试 PL/SQL 语句。另外还可以创建执行和保存报表。该工具可以...

    PLSQL Developer用户指南

    PL/SQL Developer 是一个为 Oracle 数据库开发存储程序单元的集成开发环境(IDE),使用 PL/SQL Developer 你能方便地创建你的客户/服务器应用程序的服务器部分 ,绝对实用 目录.3 1. 介绍.....9 2. 安装...13 2.1 ...

    sqldeveloper-18.4.0-376.1900-no-jre.zip

    Oracle SQL Developer 是一个免费非开源的用以开发数据库应用程序的图形化工具,使用 SQL Developer 可以浏览数据库对象、运行 SQL 语句和脚本、编辑和调试 PL/SQL 语句。另外还可以创建执行和保存报表。该工具可以...

    SQL Assistant 9.2.349企业和谐版

    SQL,oracle代码提示,完美和谐,使用pl/sql developer的用户,羡慕dbforge的代码提示吗?比Reg prompt的提示还细,功能更强。

    SQL Developer

    Oracle SQL Developer是Oracle公司出品的一个免费的集成开发环境。是一个免费非开源的用以开发数据库应用...该工具可以连接任何 Oracle 9.2.0.1 或者以上版本的 Oracle 数据库,支持 Windows、Linux 和 Mac OS X 系统。

    Oracle SQL Developer显示的时间包含时分秒的设置方法

    Oracle SQL Developer 是一个免费非开源的用以开发数据库应用程序的图形化工具,使用 SQL Developer 可以浏览数据库对象、运行 SQL 语句和脚本、编辑和调试 PL/SQL 语句。另外还可以创建执行和保存报表。该工具可以...

    PLSQL_Developer7.0中文帮助手册

    6. 专用 SQL...............................35 6.1 使用 SQL 窗口.........35 6.2 结果表格处理..........36 6.3 实例模式查询..........40 6.4 连接查询41 6.5 置换变量42 4 PL/SQL Developer 7.0 用户指南 6.6 ...

    plsqldeveloper1302x64.zip

    Oracle SQL Developer是Oracle公司出品的一个免费的集成开发环境。...该工具可以连接任何 Oracle 9.2.0.1 或者以上版本的 Oracle 数据库,支持 Windows、Linux 和 Mac OS X 系统 此为window64 位系统版本

Global site tag (gtag.js) - Google Analytics