JSON zu SQL CREATE TABLE
Wandeln Sie ein JSON-Objekt oder ein Array von Objekten in eine SQL CREATE TABLE-Anweisung um.
JSON zu SQL CREATE TABLE
Fügen Sie ein JSON-Objekt oder ein Array von JSON-Objekten ein, und dieses Tool erstellt eine einsatzbereite SQL CREATE TABLE-Anweisung daraus — verwenden Sie es auf eine Beispiel-API-Antwort oder einen exportierten Datensatz und erhalten Sie ein Startschema, anstatt jede Spalte manuell einzutippen.
Spaltentypen werden aus den tatsächlichen Werten abgeleitet: ganze Zahlen werden zu INTEGER, Zahlen mit Dezimalstellen zu DECIMAL, true/false zu BOOLEAN, Zeichenketten in der Form 2024-01-15 oder 2024-01-15T10:30:00Z zu DATE oder TIMESTAMP, und alles andere zu VARCHAR mit geschätzter Länge oder zu TEXT bei über 255 Zeichen. Ein Feld mit NOT NULL-Markierung ist in jedem eingefügten Datensatz vorhanden und niemals null; ein Feld namens id wird der PRIMARY KEY. Wählen Sie einen Dialekt — ANSI SQL, MySQL, PostgreSQL, SQLite oder SQL Server — um die kleineren Unterschiede in Typnamen zu berücksichtigen. Verschachtelte Objekte können mit Präfixen in Spalten abgeflacht werden (address.city wird address_city) oder als einzelne JSON-Spalte beibehalten werden, und "Namen in snake_case konvertieren" wandelt camelCase-JSON-Schlüssel in konventionelle SQL-Spaltennamen um.
Bei mehr als einem Datensatz fügt das Einschalten von "INSERT-Anweisungen hinzufügen" unterhalb der CREATE TABLE eine INSERT-Anweisung pro Datensatz hinzu und verwendet dabei dieselben abgeleiteten Spalten — praktisch zum Seeding einer Test-Datenbank aus einem JSON-Fixture. Die Inferenz betrachtet alle eingefügten Datensätze, nicht nur den ersten, daher wird ein Feld, das nur manchmal vorhanden ist, korrekt als nullable belassen, anstatt falsch erraten zu werden.
Alles läuft in Ihrem Browser. Das JSON, das Sie einfügen, und das daraus generierte Schema werden nie irgendwo hochgeladen — das ist wichtig, wenn die Beispieldaten aus einem Produktionsexport stammen. Kopieren Sie das Ergebnis, laden Sie es als .txt-Datei herunter, oder senden Sie die Ausgabe zurück in die Eingabe, um das Schema weiter zu verfeinern.