SQL zu GORM
MySQL-CREATE-TABLE-Anweisungen in Go-GORM-Model-Structs umwandeln
Eingabe
Ausgabe
Typzuordnung
| SQL (MySQL) | Go |
|---|---|
| tinyint(1) | bool |
| tinyint / smallint / mediumint / year | int32 |
| int / integer | int |
| bigint | int64 |
| varchar / char / text / tinytext / mediumtext / longtext / enum / set / time | string |
| datetime / timestamp / date | time.Time |
| decimal / numeric | float64 |
| float | float32 |
| double / real | float64 |
| json | json.RawMessage |
| binary / varbinary / blob / tinyblob / mediumblob / longblob | []byte |
tinyint(1) wird auf bool abgebildet, andere tinyint-Spalten auf int32. Nicht erkannte SQL-Typen werden als string übernommen und im generierten Code mit einem Kommentar markiert.
Anleitung
Fügen Sie eine oder mehrere MySQL-CREATE-TABLE-Anweisungen in das Eingabefeld ein, wählen Sie die gewünschten Optionen und klicken Sie auf „Code generieren“, um sofort kompilierbaren Go-GORM-Model-Code (inklusive package und imports) zu erhalten. Primärschlüssel, Auto-Increment, NOT NULL, Standardwerte, Kommentare sowie Unique- und normale Indizes werden übernommen; mehrere Anweisungen erzeugen mehrere Structs. Die gesamte Verarbeitung erfolgt lokal im Browser – Ihr SQL wird nicht hochgeladen.
Hinweise zur Typzuordnung
unsigned-Spalten werden auf vorzeichenbehaftete Go-Typen abgebildet (z. B. int unsigned → int); passen Sie bei Bedarf manuell auf uint-Typen an. date wird wie datetime/timestamp auf time.Time abgebildet (bei Bedarf manuell auf string ändern). decimal/numeric wird auf float64 abgebildet, was Genauigkeitsgrenzen hat – für Geldbeträge und exakte Berechnungen empfiehlt sich shopspring/decimal. json wird auf json.RawMessage abgebildet, der Import encoding/json wird automatisch ergänzt.