1:先用管理员身份登陆
conn / as sysdba;
2:查看系统参数utl_file_dir的值,如果存在一个路径值,那么你可以对这个路径中的文件使用utl_file包进行操作了,如果你想在程序中另定义路径,那么你只好取消这个路径,例如:
alter system set utl_file_dir='' scope=spfile(注意:这里必须用spfile这个参数,原因就是utl_file_dir是一个静态参数);
3:重新启动数据库 例如:startup force;
4:接下来你就可以建立你要操作的路径了,比如你可以建立目录。
create or replace directory UTLFILEDIR as 'e:/utl';(你就可以对你要操作的文件放到这个目录下面了)。
5:然后对你要使用这个目录,还有这个包的用户进行授权了:
grant read,write on directory UTLFILEDIR to userName;
grant execute on utl_file to userName;
6:用普通用户来登录(注意这里一定是普通用户,才能操作utl_file包);
如果用管理员来登录,会出现错误。