Vai al contenuto

SQL in JSON

Converti istruzioni SQL INSERT in un array JSON di oggetti.

Ingresso

SQL in JSON

Incolla una o più istruzioni SQL INSERT INTO e questo strumento le trasforma in un array JSON di oggetti, uno per riga, utilizzando i nomi delle colonne come chiavi. Gestisce elenchi VALUES su più righe, diverse istruzioni contemporaneamente e le variazioni di virgolette che vedi nei dump di MySQL, PostgreSQL e SQL Server: valori di stringa con virgolette singole con escape '' e identificatori racchiusi tra apici inversi, virgolette doppie o parentesi quadre.

Scegli "Raggruppato per tabella" anziché l'array flat predefinito quando l'input combina istruzioni INSERT per più tabelle: le righe vengono quindi raccolte sotto il nome di ciascuna tabella in un oggetto JSON. L'inferenza del tipo converte valori letterali numerici in numeri JSON, TRUE/FALSE in booleani e NULL in JSON null; disattivalo per mantenere ogni valore esattamente come letto nell'SQL, come una semplice stringa. La stampa graziosa aggiunge un rientro di due spazi per la leggibilità oppure disattivala per un risultato compatto e ridotto al minimo.

Il parser è un piccolo tokenizzatore scritto a mano creato per questo lavoro: nessun motore SQL viene eseguito da nessuna parte e non viene mai eseguito nulla. Se un'istruzione non può essere analizzata, lo strumento segnala la riga e la colonna e mostra il frammento offensivo invece di fallire silenziosamente o indovinare una soluzione. Una riga con un numero di valori diverso rispetto alle colonne dichiarate viene segnalata allo stesso modo, quindi un errore di battitura in uno script di migrazione o in un file seed è facile da individuare.

Tutto funziona nel tuo browser. L'SQL che incolli (nomi di tabelle, dati seed, dispositivi di migrazione) non lascia mai il tuo dispositivo, quindi è sicuro da utilizzare su dump di produzione o qualsiasi cosa contenga dati reali dei clienti. Al termine, copia il JSON, scaricalo come file o invialo direttamente a un altro strumento come un formattatore JSON.

FAQ

Quali dialetti SQL comprende?
Istruzioni INSERT INTO standard con stringhe tra virgolette singole, valori letterali NULL/TRUE/FALSE e identificatori con apice inverso, virgolette doppie o virgolette: il terreno comune tra i dump di MySQL, PostgreSQL e SQL Server. Non esegue un vero motore SQL, quindi espressioni, sottoquery o chiamate di funzioni all'interno di VALUES non sono supportate.
Cosa succede con più istruzioni INSERT in un input?
Ogni istruzione viene analizzata e le sue righe vengono aggiunte al risultato, come un array semplice (impostazione predefinita) o raggruppate per nome di tabella se si cambia la forma dell'output, con le righe di istruzioni ripetute sulla stessa tabella unite in un unico elenco.
Cosa succede se un'istruzione non dichiara i nomi delle colonne?
Le colonne sono denominate col1, col2 e così via in base alla posizione, quindi JSON ottiene comunque una chiave per valore.
Come funziona l'inferenza del tipo?
Con questa opzione, i valori letterali numerici diventano numeri JSON, TRUE/FALSE diventano booleani e NULL diventa JSON null. Disattivalo per mantenere ogni valore esattamente come scritto, come una stringa.
Il mio SQL è caricato da qualche parte?
No. L'analisi avviene interamente nel tuo browser: l'SQL che incolli, inclusi tutti i dati reali in esso contenuti, non lascia mai il tuo dispositivo.