Ga naar inhoud

SQL naar JSON

Converteer SQL INSERT-instructies naar een JSON-array met objecten.

Invoer
Uitvoer

SQL naar JSON

Plak een of meer SQL INSERT INTO-instructies en deze tool verandert ze in een JSON-array van objecten, één per rij, waarbij de kolomnamen als sleutels worden gebruikt. Het verwerkt VALUES-lijsten met meerdere rijen, meerdere instructies tegelijk, en de citatenvariaties die je tegenkomt in MySQL-, PostgreSQL- en SQL Server-dumps - tekenreekswaarden met enkele aanhalingstekens met een ''-escape, en ID's verpakt in backticks, dubbele aanhalingstekens of vierkante haakjes.

Kies 'Gegroepeerd op tabel' in plaats van de standaard platte array wanneer uw invoer INSERT-instructies voor verschillende tabellen combineert. Rijen worden vervolgens verzameld onder de eigen naam van elke tabel in één JSON-object. Met type-inferentie worden numerieke letterlijke getallen omgezet in JSON-nummers, TRUE/FALSE naar booleans en NULL naar JSON null; schakel het uit om elke waarde precies zo te houden als deze in de SQL wordt gelezen, als een gewone tekenreeks. Pretty-printing voegt inspringing met twee spaties toe voor de leesbaarheid, of schakelt dit uit voor een compact, verkleind resultaat.

De parser is een kleine handgeschreven tokenizer die voor deze ene taak is gebouwd: er draait nergens een SQL-engine en er wordt nooit iets uitgevoerd. Als een instructie niet kan worden geparseerd, rapporteert de tool de regel en kolom en wordt het overtredende fragment weergegeven in plaats van stil te falen of naar een oplossing te raden. Een rij met een ander aantal waarden dan de gedeclareerde kolommen wordt op dezelfde manier gerapporteerd, zodat een typefout in een migratiescript of een Seed-bestand gemakkelijk te herkennen is.

Alles draait in uw browser. De SQL die u plakt (tabelnamen, startgegevens, migratiegegevens) verlaat nooit uw apparaat, dus u kunt deze veilig gebruiken op productiedumps of op andere zaken die echte klantgegevens bevatten. Wanneer u klaar bent, kopieert u de JSON, downloadt u deze als bestand of stuurt u deze rechtstreeks naar een andere tool, zoals een JSON-formatter.

FAQ

Welke SQL-dialecten begrijpt het?
Standaard INSERT INTO-instructies met tekenreeksen tussen enkele aanhalingstekens, NULL/TRUE/FALSE-literals en backtick-, dubbele aanhalingstekens of tussen haakjes geplaatste identifiers - de gemeenschappelijke basis tussen MySQL-, PostgreSQL- en SQL Server-dumps. Er wordt geen echte SQL-engine uitgevoerd, dus expressies, subquery's of functieaanroepen binnen VALUES worden niet ondersteund.
Wat gebeurt er met meerdere INSERT-instructies in één invoer?
Elke instructie wordt geparseerd en de bijbehorende rijen worden aan het resultaat toegevoegd - hetzij als één platte array (de standaardinstelling) of gegroepeerd op tabelnaam als u de uitvoervorm wijzigt, waarbij rijen van herhaalde instructies tegen dezelfde tabel worden samengevoegd tot één lijst.
Wat moet ik doen als een instructie geen kolomnamen declareert?
Kolommen worden col1, col2 enzovoort genoemd op basis van de positie, zodat de JSON nog steeds één sleutel per waarde krijgt.
Hoe werkt type-inferentie?
Als deze optie is ingeschakeld, worden numerieke letterlijke getallen JSON-nummers, TRUE/FALSE worden booleans en NULL wordt JSON null. Schakel het uit om elke waarde precies zo te houden als geschreven, als een string.
Wordt mijn SQL ergens geüpload?
Nee. Het parseren gebeurt volledig in uw browser: de SQL die u plakt, inclusief eventuele echte gegevens die deze bevat, verlaat nooit uw apparaat.