sql >> Database teknologi >  >> RDS >> Oracle

Sådan løses ORA-29280:ugyldig mappesti

ORA-29280:ugyldig mappesti er en almindelig fejl, når der udføres filhåndteringsoperationer i Oracle-databasen

Årsag og løsning til fejlen

(1) Dette sker, hvis den angivne mappe ikke findes i parameteren utl_file_dir init.ora

sqlplus / as sysdbashow parameter utl_file_dir/tmp, /usr/tmp/SQL> declareF_LOG utl_file.file_type;beginF_LOG :=utl_file.fopen('/u500','j', 'w');end;/ 2 3 4 5 6declare*ERROR på linje 1:ORA-29280:ugyldig mappepathORA-06512:ved "SYS.UTL_FILE", linje 41ORA-06512:ved "SYS.UTL_FILE", linje 478ORA-06512:på linje 4

Opløsninger

en. Skift den mappe, som er defineret i UTL_FILE_DIR

b. Hvis biblioteket ikke kan ændres, og vi skal bruge den samme kode, bliver vi nødt til at tilføje biblioteket i UTL_FILE_DIr

Trin ville være den første ændring i spfile, derefter genbruge Oracle-databasen og derefter kontrollere

sqlplus / as sysdbaalter system set utl_file_dir='/tmp/','/usr/tmp','/u500'  scope =spfile;shutdown immediatestartupSQL> declareF_LOG utl_file.file_type;beginF0_LOG :=f00_LOG :=f0 ','y', 'w');end;/2 3 4 5 6PL/SQL-proceduren er gennemført.

c. Hvis vi kan ændre koden, kan vi begynde at bruge oracle-mapper. I så fald behøver vi ikke at angive utl_file_dir

SQL> opret mappen TESTDIR som '/u500'; SQL> tildel læsning, skriv på biblioteket TESTDIR til public;SQL> declareF_LOG utl_file.file_type;beginF_LOG :=utl_file.fopen('TESTDIR','y', 'w');end;/ PL/SQL-proceduren er gennemført.

2.  Du angiver det forkerte oracle-biblioteksnavn i den

SQL> declareF_LOG utl_file.file_type;begin 2F_LOG :=utl_file.fopen('TESTDIR','y', 'w');end;3 4 5 6 /declare*ERROR på linje 1:ORA-29280:ugyldig bibliotek pathORA-06512:ved "SYS.UTL_FILE", linje 41ORA-06512:ved "SYS.UTL_FILE", linje 478ORA-06512:på linje 4SQL> vælg * fra dba_directories hvor DIRECTORY_NAME='TESTDIR'; ingen rækker valgt> 

Opløsninger

Angiv det korrekte biblioteksnavn, eller opret det nye

SQL> opret mappen TESTDIR som '/u500'; SQL> giv læse, skriv på biblioteket TESTDIR til public;SQL> declareF_LOG utl_file.file_type;beginF_LOG :=utl_file.fopen('TESTDIR','y', 'w');end;/ 2 3 4 5 6PL/SQL procedure gennemført.

Jeg håber, du kan lide den detaljerede forklaring af ORA-29280-fejlen. Synes godt om og giv feedback

Relaterede artikler

ORA-29283:ugyldig filoperation:tjek dette indlæg om, hvordan du løser ORA-29283:ugyldig filoperation. Hvilken tilladelse skal kontrolleres
ORA-29285:filskrivefejl :ORA-29285:filskrivefejl er den almindelige fejl under filhåndtering. Tjek dette indlæg om forskellige årsager og løsninger til, hvordan det løses
ORA-01652:ude af stand til at udvide temp segment :ORA-01652 fejl normalt fordi, når tablespacet ikke har ledig plads i Permanent og Temporary tablespace i oracle database
ORA-00936 mangler udtryk :Lær fejlfinding ORA-00936 manglende udtryk i oracle SQL.hvad er forskellige løsninger, hvordan vi kan undgå det, Oracle-fejl for denne fejl
ORA-00257:arkiveringsfejl. Tilslut kun internt, indtil det frigøres. :Lær, hvordan du fejlfinder for ORA-00257 arkiveringsfejl. Tilslut kun intern fejl. Forskellige opløsninger og eksempler leveres trin for trin.
ORA-00904 :Dette indlæg for beskrivelsen og mulige løsninger af ORA-00904:ugyldig identifikator. fejlfindingstip er også givet
FND_FILE i Oracle-apps
https://docs.oracle.com/database/121/ARPLS/u_file.htm


  1. Kan du ringe til en webservice fra TSQL-kode?

  2. Slut dig til os i Amsterdam til et møde med OptimaData &VidaXL

  3. Sådan beregnes median i PostgreSQL

  4. Kan ColumnStore hjælpe med sideinddelingsarbejdsbelastninger?