Klistra in SQL till vänster och klicka på "Konvertera" — så gör vi om det till JSONKlistra in SQL-satser

Vad det här verktyget gör

Har du någonsin dragit ut en bunt INSERT-satser från en migration eller outputen från en pg_dump och behövt det som JSON för en API-seed eller en fixture, så fixar det här det på ett inklistrat svep. Du behöver inte ladda dumpen in i en databas bara för att SELECT ... FOR JSON-a ut det igen.

Verktyget läser INSERT INTO table (col, col, ...) VALUES (...)-satser — även multi-row-INSERTs — och spottar ut en JSON-array där varje rad är ett JSON-objekt med kolumnnamnen som nycklar. Hanterar standarddialekten som täcks av ISO SQL och de vanliga varianterna i PostgreSQL, MySQL, SQLite och SQL Server.

Värden typas som du förväntar dig: integer- och decimal-literaler förblir tal, citerade strängar förblir strängar, NULL blir JSON-null, TRUE/FALSE blir booleans. Datum-/tidsliteraler ('2024-01-15', '2024-01-15 10:30:00') kommer ut som ISO-8601-strängar. Om du klistrar in flera INSERTs mot olika tabeller får varje tabell sin egen nyckel i outputen, med raderna som JSON-array under.

Så använder du det

Tre steg. Funkar likadant oavsett om du klistrar in tre rader eller tre tusen.

1

Klistra in din SQL (eller testa exemplet)

Släpp in dina INSERT-satser i vänstra editorn. En enskild INSERT, en multi-row-INSERT eller flera INSERTs mot olika tabeller — allt funkar. Klicka på Ladda exempel för att se ett realistiskt orders-och-items-exempel.

Lämna SQL:en som den är — avslutande semikolon, inline-kommentarer (-- eller /* ... */) och schema-prefix (public.orders) parsas korrekt.

2

Tryck på Konvertera

Klicka på den gröna Konvertera-knappen. Verktyget läser varje INSERT, matchar värden mot kolumnnamn och bygger JSON i en enda genomgång.

3

Kopiera JSON

Höger panel visar en JSON-array (eller ett objekt av arrayer för multi-tabell-dumpar). Släpp det direkt i en API-seed, en Jest-fixture eller en statisk mock-server.

När det här faktiskt räddar dagen

Seed från en befintlig dump

Du har en <code>mysqldump</code>- eller <code>pg_dump</code>-fil och vill ha JSON-seed-data för en ny app som inte pratar direkt med den gamla DB:n. Klistra in INSERTs, behåll JSON:en.

Bygga testfixtures

Snappa upp några rader från produktion som INSERT-satser (utan något känsligt) och konvertera till JSON-fixtures för integrationstester eller Storybook-mockar.

API-seed-filer

En ny microservice förväntar sig att seedas från JSON men datan lever som SQL-inserts i monorepot. En inklistring ger dig seed-filen.

Lämna över data till front-end-teamet

Front-end-teamet vill ha exempeldata för en ny skärm. Du har SQL:en till hands. Konvertera till JSON och släpp in det i deras repo som mock-respons.

Vanliga frågor

Vilka SQL-dialekter hanterar den?

Den gemensamma delmängden: INSERT-syntax från PostgreSQL, MySQL/MariaDB, SQLite och SQL Server. Dialekt-specifika egenheter som PostgreSQL:s E'...'-escapes eller MySQL:s identifierare i backticks hanteras.

Stöder den multi-row-INSERTs?

Ja — INSERT INTO orders (id, total) VALUES (1, 9.99), (2, 15.50), (3, 42.00); kommer ut som en tre-element JSON-array med ett objekt per rad.

Hur är det med INSERTs i flera tabeller?

Varje tabell hamnar som sin egen nyckel i output-JSON, med raderna som JSON-array. Så en migration som insertar i orders och order_items ger dig {"orders": [...], "order_items": [...]} — användbart för seed-filer som behöver bevara den relationella strukturen.

Hur hanteras NULL, datum och booleans?

NULL blir JSON-null. TRUE/FALSE (eller 0/1 om schemat inte kan härledas) blir JSON-booleans respektive -tal. Datum-literaler produceras som ISO-8601-strängar enligt RFC 3339.

Kör den SQL:en?

Nej — ingenting körs mot någon databas. Verktyget parsar INSERT-syntaxen och spottar ut JSON. Din data lämnar inte konverterings-requesten.

Hur är det med result sets från SELECT?

Klistra in ett formaterat result set (kolumnrubriker plus rader) så gör verktyget sitt bästa för att producera en JSON-array. INSERT-syntax är pålitligare eftersom kolumnnamnen är explicita — föredra INSERTs om möjligt.

Andra verktyg du kanske behöver

SQL till JSON går bra ihop med resten av verktygslådan: