Sări la conținut

SQL în JSON

Convertiți instrucțiunile SQL INSERT într-o matrice JSON de obiecte.

Intrare
Ieșire

SQL în JSON

Lipiți una sau mai multe instrucțiuni SQL INSERT INTO și acest instrument le transformă într-o matrice JSON de obiecte, unul pe rând, folosind numele coloanelor ca chei. Se ocupă de liste de VALORI cu mai multe rânduri, mai multe instrucțiuni simultan și variațiile de ghilimele pe care le vedeți în depozitele MySQL, PostgreSQL și SQL Server - valori de șir cu ghilimele simple cu „escape” și identificatori înfășurați în backtick-uri, ghilimele duble sau paranteze drepte.

Alegeți „Grupate după tabel” în loc de matricea plată implicită atunci când intrarea dvs. amestecă instrucțiuni INSERT pentru mai multe tabele - rândurile sunt apoi colectate sub numele fiecărui tabel într-un obiect JSON. Inferența tip transformă literalele numerice în numere JSON, TRUE/FALSE în boolean și NULL în JSON null; dezactivați-l pentru a păstra fiecare valoare exact așa cum este citită în SQL, ca șir simplu. Imprimarea destul de adaugă indentare în două spații pentru lizibilitate sau o dezactivează pentru un rezultat compact și redus.

Analizatorul este un mic tokenizer scris de mână, construit pentru această lucrare – niciun motor SQL nu rulează nicăieri și nimic nu este executat vreodată. Dacă o declarație nu poate fi analizată, instrumentul raportează linia și coloana și arată fragmentul ofensator în loc să eșueze în tăcere sau să ghicească o remediere. Un rând cu un număr diferit de valori decât coloanele declarate este raportat în același mod, astfel încât o greșeală de tipar într-un script de migrare sau într-un fișier seed este ușor de detectat.

Totul rulează în browserul dvs. SQL-ul pe care îl inserați — nume de tabel, date de început, dispozitive de migrare — nu părăsește niciodată dispozitivul dvs., așa că este sigur de utilizat în depozitele de producție sau orice conține date reale ale clienților. Când ați terminat, copiați JSON, descărcați-l ca fișier sau trimiteți-l direct la un alt instrument, cum ar fi un formatator JSON.

FAQ

Ce dialecte SQL înțelege?
Instrucțiunile INSERT INTO standard cu șiruri de caractere simple, literale NULL/TRUE/FALSE și identificatori cu backtick, ghilimele duble sau paranteze - punctul comun dintre depozitele MySQL, PostgreSQL și SQL Server. Nu rulează un motor SQL real, așa că expresiile, subinterogările sau apelurile de funcții din VALUES nu sunt acceptate.
Ce se întâmplă cu mai multe instrucțiuni INSERT într-o singură intrare?
Fiecare instrucțiune este analizată și rândurile sale sunt adăugate la rezultat - fie ca o singură matrice plată (implicit), fie grupate după numele tabelului dacă schimbați forma de ieșire, cu rânduri din instrucțiuni repetate în același tabel îmbinate într-o singură listă.
Ce se întâmplă dacă o declarație nu declară numele coloanelor?
Coloanele sunt denumite col1, col2 și așa mai departe în funcție de poziție, astfel încât JSON primește în continuare o cheie per valoare.
Cum funcționează inferența de tip?
Cu acesta activat, literalele numerice devin numere JSON, TRUE/FALSE devin boolean și NULL devine JSON null. Opriți-l pentru a păstra fiecare valoare exact așa cum este scrisă, ca șir.
Este SQL-ul meu încărcat de undeva?
Nu. Analiza are loc în întregime în browser - SQL-ul pe care îl inserați, inclusiv orice date reale pe care le conține, nu părăsește niciodată dispozitivul.