如何在类型声明中使用utl_file

时间:2013-07-16 15:00:21

标签: oracle plsql

我正在创建一个类型,我想在其中使用utl_file包。不幸的是,我有一条消息:

MEMBER FUNCTION draw(fichier utl_file.file_type) RETURN NUMBER,

PLS-00201:identifier utl_file.file_type must be declared

有些人可能会说我需要将utl_file包的执行权授予用户,但这不是解决方案,因为用户已经拥有权限,因为我可以在我的包中使用utl_file

感谢您的回答

2 个答案:

答案 0 :(得分:1)

查看PL / SQL对象类型的documentation。在“方法”下,它指出,“(参数的)数据类型可以是任何Oracle类型,除了那些不允许属性的类型”。其中不允许的是PL / SQL包中定义的类型,例如UTL_FILE.FILE_TYPE。

分享并享受。

答案 1 :(得分:-1)

你确定它是PL SQL吗?这不是创建函数的语法。试试这个:

CREATE OR REPLACE FUNCTION draw (fichier utl_file.file_type) RETURN NUMBER
IS
    A NUMBER;
    --declare your variables
BEGIN
    A:=1;
    --code your process
RETURN A; --your return value
END;
/