sql >> Database >  >> RDS >> Oracle

Bestandsuploads in een niet-Apex PL/SQL-toepassing gemigreerd naar ORDS

ORDS 18.3+ is de logica gewijzigd om het voor niet-apex gemakkelijker te maken. Hier is de nieuwe logica in een stroomschema, hopelijk is het gemakkelijk te volgen.

In Vorige tot 18.3 en hieronder leest u hoe u hetzelfde kunt bereiken>

De vangst is nu dat er een hacky-oplossing is om dit te laten werken en dat is om te doen alsof apex te oud is om dat codepad te gebruiken. ( ja ja ik zal dit oplossen )

Maak deze weergave in de db-gebruiker die is geconfigureerd in het verbindingspoolbestand. De code controleert of apex 4+ is geïnstalleerd om dat te gebruiken. Deze weergave is hoe dat wordt gecontroleerd, dus het forceren van orden naar ding dat apex oud is, zal ervoor zorgen dat het gewone 'oude DOC-tabelpad wordt gebruikt.

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/klric.xml

De parameter heet apex.docTable en dit zal standaard ingesteld op "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>

Mijn tafel

[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 );

Na gebeld te zijn:

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

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



  1. hoe een geserialiseerd object met naamruimte in de database op te slaan met behulp van pdo php

  2. Een gebruiker maken in Oracle 11g en machtigingen verlenen

  3. mysql pivoting - hoe kan ik gegevens uit dezelfde tabel in verschillende kolommen ophalen?

  4. Laravel Migration veld toevoegen nadat de gegevens in de tabel staan?