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

Sådan løses problemet med Oracle DBMS_LOB

Fra dokumentationen, du linkede til :

GRUPO skal evalueres til 'DIR_XML' i stedet for 'C:\XMLS' . Det er vist i eksemplet i den dokumentation. (Der var en gammel pre-directory-objekt-mekanisme baseret på en sti gemt som en databaseparameter, men den var mindre sikker...)

Hvis alt du har er stien, kan du slå mappenavnet op:

select directory_name from all_directories where directory_path = 'C:\XMLS'

huske på, at mappestier ikke behøver at være unikke, så du skal muligvis håndtere dubletter.

Men som @Matthew allerede har forklaret, og som dokumentationen siger (fremhævelse tilføjet):

Databasen kan kun se filer på sit eget filsystem - lokalt eller delt - og ikke dem på klientfilsystemer. Hvis du også kører DB'en lokalt, er der ingen forskel (selvom mappe- og filtilladelser stadig betyder noget). Hvis du har adgang til en ekstern DB, kan den ikke se dit klient C:-drev, og hvis du giver katalogobjektets navn, får du stadig noget som:

ORA-22288: file or LOB operation FILEOPEN failed
No such file or directory

Du skal placere dine XML-filer i en mappe på DB-serveren, som operativsystemkontoen har adgang til, og oprette et mappeobjekt, der peger på den placering på serveren; og derefter henvise til mappeobjektets navn, ikke den underliggende filsystemsti.



  1. SQLAlchemy DateTime tidszone

  2. Hvad er IKKE logisk operatør i SQL Server - SQL Server / TSQL Tutorial Del 121

  3. Hvordan opsætter man brugernavn og adgangskode med Slicks kildekodegenerator?

  4. MYSQL Vælg en kolonne på to værdier