請教 :oracle 中怎么使用proc實現本地文件的移動和刪除

zhuqiang9 2009-01-19 03:25:27
如題
...全文
125 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wiler 2009-02-03
  • 打赏
  • 举报
回复
既然是用proc编写程序
本地文件的删除和移动都用c实现就好,为什么一定要用oracle的UTL_FILE包?
oracle的UTL_FILE包处理文件比c处理起来低效很多
又是违规昵称 2009-02-03
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lsj3073 的回复:]
lpc19598188
----他非常厉害,一般问题都能回答上来 ,而且很详细。我原先的问题老是他回答的。
[/Quote]

您的夸奖让我汗颜了,论坛里的高手很多,我只是一个不够低调的菜鸟
lsj3073 2009-02-03
  • 打赏
  • 举报
回复
lpc19598188
----他非常厉害,一般问题都能回答上来 ,而且很详细。我原先的问题老是他回答的。
wangxuhero 2009-01-20
  • 打赏
  • 举报
回复
使用utl_file操作:

首先你要定义一个目录,utl_file_dir或者directory都可以,这里使用directory。
create directory ORACLETEST as 'f:\oracletest'
1,文件删除:
exec utl_file.fremove('ORACLETEST','1.bad');
2,文件移动:
exec utl_file.FRENAME('ORACLETEST','1.log','ORACLETEST','2.log');
又是违规昵称 2009-01-20
  • 打赏
  • 举报
回复
移动可以通过组合复制和删除的方法来实现,官方的文档资料很全的
又是违规昵称 2009-01-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zhuqiang9 的回复:]
能不能詳細點的,對這個不是了解,最好是pl/sql porc 寫的,一般看試用utl_file,有誰能介紹下的
[/Quote]

非常好用,只要记得建目录授权就行了,我贴一段:

SQL> CREATE DIRECTORY log_dir AS '/appl/gl/log';
SQL> GRANT READ ON DIRECTORY log_dir TO DBA;

SQL> CREATE DIRECTORY out_dir AS '/appl/gl/user'';
SQL> GRANT READ ON DIRECTORY user_dir TO PUBLIC;

--删除的方法及参数介绍
FREMOVE Procedure
This procedure deletes a disk file, assuming that you have sufficient privileges.

Syntax

UTL_FILE.FREMOVE (
location IN VARCHAR2,
filename IN VARCHAR2);


--复制的介绍
FCOPY Procedure
This procedure copies a contiguous portion of a file to a newly created file. By default, the whole file is copied if the start_line and end_line parameters are omitted. The source file is opened in read mode. The destination file is opened in write mode. A starting and ending line number can optionally be specified to select a portion from the center of the source file for copying.

Syntax

UTL_FILE.FCOPY (
location IN VARCHAR2,
filename IN VARCHAR2,
dest_dir IN VARCHAR2,
dest_file IN VARCHAR2,
start_line IN PLS_INTEGER DEFAULT 1,
end_line IN PLS_INTEGER DEFAULT NULL);

官方文档及例子如下:
http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/u_file.htm#BABDEJDH
jdsnhan 2009-01-20
  • 打赏
  • 举报
回复
http://oreilly.com/catalog/oraclebip/chapter/ch06.html
zhuqiang9 2009-01-19
  • 打赏
  • 举报
回复
能不能詳細點的,對這個不是了解,最好是pl/sql porc 寫的,一般看試用utl_file,有誰能介紹下的
wangxuhero 2009-01-19
  • 打赏
  • 举报
回复
存储过程里调用host命令就可以对本地的操作系统文件进行操作。
host move
host copy等

unix里可以使用!也可以使用host

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧