Usa dati JSON con Oracle APEX

È possibile utilizzare Oracle APEX per creare applicazioni con dati JSON. È innanzitutto necessario creare una vista per estrarre gli attributi obbligatori dai dati JSON e mapparli in colonne di una vista relazionale.

Crea una vista da JSON Data Guide

Oracle APEX interpreta i dati in formato relazionale. La creazione di una vista estrae gli attributi obbligatori dai dati JSON e li mappa in colonne di una vista relazionale.

Per creare una vista dei dati JSON memorizzati nelle raccolte SODA, è possibile utilizzare le API SODA e JSON Data Guide. Il codice PL/SQL riportato di seguito utilizza le API SODA per creare una vista Guida dati sui dati JSON memorizzati nelle raccolte SODA.

Eseguire il codice seguente in Oracle APEX SQL Workshop per creare una vista denominata myview:

-- Fetch the data guide and create a view
DECLARE    
    coll  SODA_Collection_T;
    dg    CLOB;
    n     NUMBER;
BEGIN    -- Fetch the data guide from the collection or create one with hierarchical format
    coll := dbms_soda.open_Collection('mycollection');
    dg := coll.get_Data_Guide;
    dbms_output.put_line(JSON_QUERY(dg, '$' pretty));
    -- User can modify the data guide as needed
    n := coll.create_View_From_DG('myview', dg);
    dbms_output.put_line('Status: ' || n);
    dbms_lob.freeTemporary(dg);
END;
/

Utilizzare il seguente comando per verificare se la vista è stata creata:

select count(1) from user_views where view_name = 'myview';

Utilizzare il comando riportato di seguito per visualizzare la struttura della vista.

describe myview;

Per ulteriori informazioni sulla creazione di una vista mediante JSON Data Guide, vedere Create View using JSON Data Guide.

Creare una vista con la funzione JSON_TABLE

È possibile creare viste dei dati JSON utilizzando la funzione json_table SQL/JSON.

La funzione json_table SQL/JSON proietta dati JSON specifici in colonne di vari tipi di dati SQL. È possibile utilizzare la funzione json_table per mappare parti di un documento JSON nelle righe e nelle colonne di una nuova tabella virtuale, che è anche possibile considerare come vista in linea.

Per ulteriori informazioni sulla creazione di viste su dati JSON, vedere Crea vista su dati JSON.