IS_OPEN 函数 - 确定指定的文件是否已打开
IS_OPEN 函数确定指定的文件是否已打开。
语法
返回值
此函数返回类型为 BOOLEAN 的值,用于指示指定的文件已打开 (TRUE) 还是已关闭 (FALSE)。
函数参数
- file
- 类型为 UTL_FILE.FILE_TYPE 的输入自变量,其中包含文件句柄。
权限
对 UTL_FILE 模块的 EXECUTE 特权。
示例
以下示例演示:在将文本写至文件之前,您可调用 IS_OPEN 函数以检查该文件是否已打开。
SET SERVEROUTPUT ON@
CREATE OR REPLACE PROCEDURE proc1()
BEGIN
DECLARE v_filehandle UTL_FILE.FILE_TYPE;
DECLARE isOpen BOOLEAN;
DECLARE v_dirAlias VARCHAR(50) DEFAULT 'mydir';
DECLARE v_filename VARCHAR(20) DEFAULT 'myfile.csv';
CALL UTL_DIR.CREATE_OR_REPLACE_DIRECTORY('mydir', '/tmp');
SET v_filehandle = UTL_FILE.FOPEN(v_dirAlias,v_filename,'w');
SET isOpen = UTL_FILE.IS_OPEN( v_filehandle );
IF isOpen != TRUE THEN
RETURN -1;
END IF;
CALL UTL_FILE.PUT_LINE(v_filehandle,'Some text to write to the file.');
CALL DBMS_OUTPUT.PUT_LINE('Updated file: ' || v_filename);
CALL UTL_FILE.FCLOSE(v_filehandle);
END@
CALL proc1@此示例生成以下输出。
Updated file: myfile.csv