Oracle 9.2.0.1下PL/SQL对文件的操作
在Oracle中,使用PL/SQL编写存储过程是一种常用手法。也经常会遇到文件读写的问题,Oracle的PL/SQL可以对系统文件进行读写增删等操作,这里来给出我的做法。 首先,需要增加对系统文件的目录的读写权限,比如现在需要增加对“c:\temp”下目录的文件操作权限,当前操作用户名为TEST。首先定义一个文件目录的别名。 CREATE OR REPLACE DIRECTORY 然后在管理员权限下给TEST用户增加操作目录的操作权限 GRANT READ, WRITE ON DIRECTORY UTL_FILE_DIR TO TEST WITH GRANT OPTION; 这样,当前用户下就有了对'c:\temp'目录的读写权限。 下面给出一个读文件的例子 G_FILE UTL_FILE.FILE_TYPE;
END LOOP; END; 这样就可以对test.txt文件的读取操作,读写缓存是1023个字节,如果文件一行超过了1023个字节,则会文件读写错误。在Oracle9i以后在打开文件的时候多了一个参数,也就是文件读取缓存的参数,如下所示 G_FILE := UTL_FILE.FOPEN(G_FILEPATH, G_FILENAME, 'R', 3000); 这样,读写缓存就达到了3000,当文件超过3000行的话就会产生错误。在3000行 |