469,626 Members | 851 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 469,626 developers. It's quick & easy.

ORA-29283: invalid file operation

Hi All,

I m facing mentioned error while executing below code at line no 3.

CREATE or REPLACE DIRECTORY MY_DIR AS '/outputs/EXTRACTS';
GRANT READ,WRITE ON DIRECTORY MY_DIR TO public;
fileID := UTL_FILE.FOPEN('MY_DIR', fileName,'W');

I tried all the possibe ways but still not understood what is the problem there.
Please give ur sugeetions guys so i can try.

Thanks & Regards,
Bhushan
Sep 11 '07 #1
6 37315
amitpatel66
2,367 Expert 2GB
Hi All,

I m facing mentioned error while executing below code at line no 3.

CREATE or REPLACE DIRECTORY MY_DIR AS '/outputs/EXTRACTS';
GRANT READ,WRITE ON DIRECTORY MY_DIR TO public;
fileID := UTL_FILE.FOPEN('MY_DIR', fileName,'W');

I tried all the possibe ways but still not understood what is the problem there.
Please give ur sugeetions guys so i can try.

Thanks & Regards,
Bhushan
ORA-29283

ORA-29283: invalid file operation

Cause: An attempt was made to read from a file or directory that does not exist, or file or directory access was denied by the operating system.

Action: Verify file and directory access privileges on the file system, and if reading, verify that the file exists.
Sep 11 '07 #2
ORA-29283

ORA-29283: invalid file operation

Cause: An attempt was made to read from a file or directory that does not exist, or file or directory access was denied by the operating system.

Action: Verify file and directory access privileges on the file system, and if reading, verify that the file exists.
thanks for the reply,

But i had got the same reply on google when i searched, i need some other solution guys.

Regds,
Bhushan
Sep 11 '07 #3
amitpatel66
2,367 Expert 2GB
thanks for the reply,

But i had got the same reply on google when i searched, i need some other solution guys.

Regds,
Bhushan
Could you check if you have R,W,X permission on the directory ''/outputs/EXTRACTS''??

And CREATE DIRECTORY only creates a references object to the directory that you specidiy and not the directory itself.

Check whether the directory is present in the SERVER side and not Client Side and Oracle has permission ot write to it....

Use below Code to create the direcotry that u r using in yur code:

SQL> HOST MD'D:/tmp'
Sep 11 '07 #4
Could you check if you have R,W,X permission on the directory ''/outputs/EXTRACTS''??

And CREATE DIRECTORY only creates a references object to the directory that you specidiy and not the directory itself.

Check whether the directory is present in the SERVER side and not Client Side and Oracle has permission ot write to it....

Use below Code to create the direcotry that u r using in yur code:

SQL> HOST MD'D:/tmp'
Amit

Everything is fine about RWX u told still i m facing the same problem, i don't understanding what could be the problem. Is there any other reason bcoz of that OS dening on access by oracle

Regds,
Bhushan
Sep 12 '07 #5
amitpatel66
2,367 Expert 2GB
Amit

Everything is fine about RWX u told still i m facing the same problem, i don't understanding what could be the problem. Is there any other reason bcoz of that OS dening on access by oracle

Regds,
Bhushan
Hi,

I tried the following steps which worked fine:

Expand|Select|Wrap|Line Numbers
  1.  
  2. create or replace directory my_dir AS '/tmp'
  3.  
  4. GRANT READ,WRITE ON DIRECTORY my_dir TO PUBLIC;
  5.  
  6. DECLARE
  7. File    UTL_FILE.FILE_TYPE;
  8. BEGIN
  9. File:= UTL_FILE.FOPEN('MY_DIR','a.txt','W');
  10. UTL_FILE.PUT_LINE(File,'I am writing to file');
  11. UTL_FILE.FCLOSE(File);
  12. END;
  13. /
  14.  
The file a.txt was created and the content was written to the file perfectly.

When I tried creating directory to '/usr', and GRANT all required privileges. Then tried executing the above mentioned anonymous block. It failed, it said the same error as it is showing for your code. And I also tried ftp'ing a file to the folder '/usr' but permission denied. So the DBA have given privileges only to some USERS to make use of the folder '/usr' but '/tmp' can be accessed by anybody.

Hope this helps!!
Sep 12 '07 #6
jorj
1
Hi,

I tried the following steps which worked fine:

Expand|Select|Wrap|Line Numbers
  1.  
  2. create or replace directory my_dir AS '/tmp'
  3.  
  4. GRANT READ,WRITE ON DIRECTORY my_dir TO PUBLIC;
  5.  
  6. DECLARE
  7. File    UTL_FILE.FILE_TYPE;
  8. BEGIN
  9. File:= UTL_FILE.FOPEN('MY_DIR','a.txt','W');
  10. UTL_FILE.PUT_LINE(File,'I am writing to file');
  11. UTL_FILE.FCLOSE(File);
  12. END;
  13. /
  14.  
The file a.txt was created and the content was written to the file perfectly.

When I tried creating directory to '/usr', and GRANT all required privileges. Then tried executing the above mentioned anonymous block. It failed, it said the same error as it is showing for your code. And I also tried ftp'ing a file to the folder '/usr' but permission denied. So the DBA have given privileges only to some USERS to make use of the folder '/usr' but '/tmp' can be accessed by anybody.

Hope this helps!!



yep, this one works!
thx for ur help, i've been searching for this for more that 5 hours!
OPEN SOURCE ROCKSSSS!!!!!!
Mar 28 '08 #7

Post your reply

Sign in to post your reply or Sign up for a free account.

Similar topics

reply views Thread by J.Bijleveld | last post: by
2 posts views Thread by J.Bijleveld | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.