Convertire JSON in Oracle
Trascina il tuo file JSON per ottenere uno script Oracle con istruzioni CREATE TABLE e INSERT. Ogni colonna riceve un tipo e ogni correzione è elencata con la sua riga e colonna.
4 righe convertite, 2 correzioni, nessuna rifiutata
| Riga | ||||||
|---|---|---|---|---|---|---|
| 2 | 000481 | Peña Muñoz | 2024-02-03T10:15:00Z | 1234.5 | true | |
| 3 | 000482 | José Ángel Ruiz | 2024-02-15T16:40:00Z | 99.9 | false | Entrega en la tarde |
| 4 | 000483 | Zoë Ortíz | 2024-02-29T09:05:00Z | 12 | true | |
| 5 | 000484 | Ñuño Castañeda | 2024-03-11T13:30:00Z | 980.75 | sí | Factura con "RFC" |
-- Written by IntoSQL for Oracle.
SET DEFINE OFF
CREATE TABLE pedidos_2024 (
pedido VARCHAR2(8 CHAR) NOT NULL,
cliente VARCHAR2(16 CHAR) NOT NULL,
fecha TIMESTAMP WITH TIME ZONE NOT NULL,
total NUMBER(6,2) NOT NULL,
pagado NUMBER(1) NOT NULL,
notas VARCHAR2(32 CHAR)
);
INSERT ALL
INTO pedidos_2024 (pedido, cliente, fecha, total, pagado, notas) VALUES ('000481', 'Peña Muñoz', TIMESTAMP '2024-02-03 10:15:00 +00:00', 1234.5, 1, NULL)
INTO pedidos_2024 (pedido, cliente, fecha, total, pagado, notas) VALUES ('000482', 'José Ángel Ruiz', TIMESTAMP '2024-02-15 16:40:00 +00:00', 99.9, 0, 'Entrega en la tarde')
INTO pedidos_2024 (pedido, cliente, fecha, total, pagado, notas) VALUES ('000483', 'Zoë Ortíz', TIMESTAMP '2024-02-29 09:05:00 +00:00', 12, 1, NULL)
INTO pedidos_2024 (pedido, cliente, fecha, total, pagado, notas) VALUES ('000484', 'Ñuño Castañeda', TIMESTAMP '2024-03-11 13:30:00 +00:00', 980.75, 1, 'Factura con "RFC"')
SELECT 1 FROM DUAL;
COMMIT;
Correzioni
- Zeri iniziali mantenuti in "pedido": 000481 resta 000481, salvato come testo.
- "pagado" contiene parole sì e no (sí), salvate come booleano.
Il tuo file viene convertito su questo computer e non viene mai caricato.
Altri esempi:
Da JSON a Oracle, colonna per colonna
L'esempio qui sopra, pedidos_2024.json, come IntoSQL lo scrive per Oracle: cosa contiene ogni colonna nel file, il tipo che riceve e come il suo primo valore finisce nello script.
| Nel file | Primo valore | Colonna | Tipo Oracle | Nello script |
|---|---|---|---|---|
| pedido | 000481 | pedido | VARCHAR2(8 CHAR) | '000481' |
| cliente | Peña Muñoz | cliente | VARCHAR2(16 CHAR) | 'Peña Muñoz' |
| fecha | 2024-02-03T10:15:00Z | fecha | TIMESTAMP WITH TIME ZONE | TIMESTAMP '2024-02-03 10:15:00 +00:00' |
| total | 1234.5 | total | NUMBER(6,2) | 1234.5 |
| pagado | true | pagado | NUMBER(1) | 1 |
| notas | - | notas | VARCHAR2(32 CHAR) | NULL |
Carica lo script in Oracle
Il download è un semplice file .sql. Eseguilo con gli strumenti di Oracle.
Da un terminale
sqlplus user@//localhost/mydb @pedidos_2024.oracle.sqlLo script disattiva le variabili di sostituzione (SET DEFINE OFF), così una e commerciale nei tuoi dati resta tale.
Da uno strumento per database
In SQL Developer, apri lo script e scegli Run Script (F5).
Cosa sapere sui file JSON e su Oracle
Cosa legge IntoSQL nei file JSON
- Il file può essere un array di oggetti, un oggetto che contiene quell'array sotto una chiave come data, oppure un oggetto per riga (NDJSON).
- Ogni chiave diventa una colonna. Oggetti e array dentro un valore restano testo JSON.
- I numeri mantengono le cifre esatte, e le date ISO 8601 diventano date o timestamp.
Cosa sapere su Oracle
- I valori sì e no diventano NUMBER(1), con 1 o 0, che ogni versione di Oracle accetta.
- Il testo è VARCHAR2 con una lunghezza in caratteri; oltre 4000 byte diventa CLOB. Oracle salva il testo vuoto come NULL.
- Le righe vengono inserite con INSERT ALL, e i valori lunghi vengono divisi perché SQL*Plus li accetti.
Come viene salvato ogni tipo di valore in Oracle
| Valore | Oracle |
|---|---|
| Sì e no | NUMBER(1) |
| Numeri interi | NUMBER(10) |
| Numeri interi grandi | NUMBER(19) |
| Decimali | NUMBER(p,s) |
| Numeri in virgola mobile | BINARY_DOUBLE |
| Date | DATE |
| Orari | INTERVAL DAY(0) TO SECOND |
| Date con ora | TIMESTAMP |
| Date con ora e fuso | TIMESTAMP WITH TIME ZONE |
| Testo | VARCHAR2(n CHAR)CLOB |
Domande su JSON in Oracle
Non trovi la risposta? Scrivici dalla pagina dei contatti e ti risponde una persona. Pagina dei contatti
Come converto JSON in Oracle?
Trascina il file sul convertitore in cima a questa pagina. Trova l'intestazione, legge ogni valore e scrive lo script Oracle, elencando ogni correzione fatta. Scarica lo script ed eseguilo con SQL*Plus.
Che forma deve avere il file JSON?
Un array di oggetti, un oggetto che contiene quell'array sotto una chiave come data, oppure un oggetto per riga (NDJSON). Ogni chiave diventa una colonna.
Quali tipi Oracle usa?
I valori sì e no diventano NUMBER(1), i numeri interi NUMBER(10), i decimali NUMBER(p,s), le date DATE, le date con ora TIMESTAMP e il testo VARCHAR2(n CHAR). Le dimensioni dipendono dal valore più lungo di ogni colonna.
Mantiene gli zeri iniziali in Oracle?
Sì. Un codice come 000481 resta testo, quindi Oracle lo salva come VARCHAR2(8 CHAR) e lo script lo scrive come '000481'.
Può caricare i dati in Oracle senza uno script?
No. Scarica lo script ed eseguilo con SQL*Plus. Il caricamento senza script funziona per PostgreSQL, MySQL, MariaDB e SQLite, dall'app desktop o dalla riga di comando.
Quanto può essere grande il file JSON?
L'NDJSON, un oggetto per riga, viene letto man mano che arriva, quindi nel browser funzionano file di diversi gigabyte. Un documento JSON viene letto per intero, quindi il limite è la memoria che il browser concede a questa pagina. L'app desktop e la riga di comando accettano file di qualsiasi dimensione.