Over deze tool
De tool JSON naar SQL CREATE TABLE leest een JSON-array van objecten (of een enkel object) en leidt een bijpassende SQL-tabeldefinitie af, waarbij het type van elke kolom wordt gekozen uit de waarden die het daadwerkelijk ziet. Het draait volledig in je browser — de JSON wordt geparseerd met de native JSON.parse en verlaat je apparaat nooit — dus je kunt een API-dump of een database-export plakken en in één stap een tabel steigeren.
Kolomtypes worden per veld over elke rij afgeleid: waarden die allemaal gehele getallen zijn worden INT (BIGINT wanneer een waarde 2.147.483.647 overschrijdt), getallen met decimalen worden DECIMAL(p,s) gedimensioneerd naar de breedste integer- en fractiecijfer-aantallen die je opgaf (of DOUBLE / REAL wanneer je de float-modus kiest), booleans worden afgebeeld op TINYINT(1)/BOOLEAN, ISO 8601-strings op DATETIME of DATE, geneste objecten en arrays worden JSON/JSONB, en resterende strings worden VARCHAR(N) waarbij N de eerstvolgende macht van twee boven de langste waarde is (TEXT zodra dat 255 overschrijdt). Een kolom die in enige rij null of ontbrekend is blijft NULLABLE; anders is deze NOT NULL. Een unieke, niet-null kolom genaamd id of uuid wordt gepromoveerd tot de PRIMARY KEY, met AUTO_INCREMENT / SERIAL / AUTOINCREMENT toegevoegd voor integer-sleutels.
Een dialect-schakelaar herschrijft de types voor MySQL, PostgreSQL (SERIAL, JSONB, TIMESTAMP, DOUBLE PRECISION), of SQLite (INTEGER / REAL / TEXT-affiniteiten) en voorziet identifiers van aanhalingstekens met de juiste delimiter (backticks voor MySQL, dubbele aanhalingstekens elders). Zet de INSERTs-optie aan om ook één INSERT-statement per rij te produceren, met strings, booleans, getallen en JSON-waarden escaped en van aanhalingstekens voorzien voor het gekozen dialect.