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

Filupload i en ikke-Apex PL/SQL-applikation migreret til ORDS

ORDS 18.3+ logikken ændret for at gøre det lettere for ikke-apex. Her er den nye logik i et flowdiagram, der forhåbentlig gør det nemt at følge.

I Tidligere til 18.3 og nedenfor kan du se, hvordan du opnår det samme>

Fangsten er lige nu, at der er en hacket løsning på at få dette til at virke, og det er at lade som om, at apex er for gammel til at bruge den kodesti. (ja ja, jeg ordner dette)

I den db-bruger, der er konfigureret i forbindelsespuljefilen, skal du oprette denne visning. Koden kontrollerer, at hvis apex 4+ er installeret for at bruge det. Denne visning er, hvordan det kontrolleres, så at tvinge ords til at ting, apex er gammel, vil få den almindelige DOC-tabelsti til at blive brugt.

create view apex_release as
  select '1.0.0.0' VERSION_NO from dual;

url-mapping.xml

<?xml version="1.0" encoding="UTF-8"?>
<pool-config xmlns="http://xmlns.oracle.com/apex/pool-config">
   <pool base-path="/klrice" name="klrice" />
</pool-config>

conf/klrice.xml

Parameteren hedder apex.docTable og dette vil standard til "FLOWS_FILES.WWV_FLOW_FILE_OBJECTS$"

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
  <entry key="db.username">klrice</entry>
  <entry key="db.password">klrice</entry>
  <entry key="apex.docTable">klrice.MYDOCTABLE</entry>
</properties>

Mit bord

[email protected]🍻🍺 >CREATE TABLE MYDOCTABLE (
  2    NAME               VARCHAR(256)   UNIQUE NOT NULL, 
  3    MIME_TYPE          VARCHAR(128), 
  4    DOC_SIZE           NUMBER, 
  5    DAD_CHARSET        VARCHAR(128), 
  6    LAST_UPDATED       DATE, 
  7    CONTENT_TYPE       VARCHAR(128), 
  8    CONTENT            LONG RAW, 
  9*   BLOB_CONTENT       BLOB );

Efter at være blevet ringet op:

  1* select BLOB_CONTENT from MYDOCTABLE
[email protected]🍻🍺 >/

BLOB_CONTENT                                                                    
--------------------------------------------------------------------------------
89504E470D0A1A0A0000000D49484452000000C8000000C80806000000AD58AE9E00000001735247



  1. Hvordan kan jeg se, om en ejer har tilladelser til at udføre en butiksprocedure i Oracle

  2. Sådan bruger du flere databaser i Laravel

  3. God OleDB/ODBC-udbyder til PostgreSQL

  4. Hvordan migrerer jeg nemt fra MySQL til PostgreSQL?