Wozu ein SQL-Dialekt-Konverter?
Jede Datenbank hat ihren eigenen SQL-Flavor. PostgreSQL nutzt `SERIAL` für einen auto-incrementierten Key, MySQL `AUTO_INCREMENT`, MSSQL `IDENTITY(1,1)`, Oracle `GENERATED AS IDENTITY`. Standard-SQL ist theoretisch, in der Praxis hat jeder Vendor seine eigenen Extensions draufgeschraubt.
Du pastest eine Query von einer DB, wählst Quelle und Ziel-Dialekt, und das Tool schreibt die abweichenden Teile um: Spalten-Typen (TINYINT vs BOOLEAN vs BIT vs NUMBER(1)), auto-incrementierte Keys, Pagination (`LIMIT/OFFSET` vs `TOP` vs `FETCH NEXT`), Zeit-Funktionen (`NOW()` vs `GETDATE()` vs `SYSDATE`), String-Concat (`||` vs `CONCAT()`), Identifier-Quoting (`` `id` `` vs `[id]` vs `"id"`).
Rechts siehst du die Liste der angewandten Änderungen mit kurzer Begründung. Keine Magie, nur ein anständiges Regelwerk, das etwa 80% einfacher Schema-Portierungen abdeckt.
So nutzt du das Tool
- Quell-Dialekt (woher die Query stammt) und Ziel-Dialekt (wo sie laufen soll) wählen.
- Dein SQL ins linke Panel pasten. Kann `CREATE TABLE`, `SELECT`, `INSERT` sein, was auch immer.
- Rechts kriegst du das konvertierte Ergebnis, automatisch für den Ziel-Dialekt formatiert.
- Drunter die Liste der gemachten Änderungen: jede Regel mit "vorher / nachher"-Diff und kurzem Label.
- Ergebnis mit Copy kopieren. Dann die Logik gegenprüfen (Regex kann nicht alles, manchmal sind manuelle Tweaks nötig).
- Swap-Arrows drehen Quelle und Ziel. Praktisch für Konvertierung in beide Richtungen.
Wann das nützlich ist
Klassische Szenarien:
- Von MySQL zu PostgreSQL migrieren. Der Klassiker: die Firma ist gewachsen, MySQL reicht nicht, du gehst zu Postgres. Schema muss umgeschrieben werden. Dieses Tool macht 80% der Drecksarbeit.
- Zwei Datenbanken in einer ORM unterstützen. Du arbeitest mit Prisma oder Drizzle, der Kunde läuft auf MSSQL, dein lokales Dev ist PostgreSQL. Du brauchst zwei Versionen des Init-Skripts.
- BigQuery-Tabellen aus einer Operativ-DB bauen. Das MySQL-Schema muss an BigQuery angepasst werden, das kein AUTO_INCREMENT hat und viele Typ-Unterschiede.
- Code-Review einer Query von einem Kollegen, der gegen eine andere Engine schreibt. Schneller Check, ob sie auf deiner DB läuft.
- Dialekt-Unterschiede lernen. Eine simple Query pasten, den Ziel-Dialekt umschalten, sehen was sich ändert. Besser als trockene Doku lesen.
- Portabilitäts-Check eines bestehenden Schemas. Die Konvertierung hebt hervor, wo du Vendor-spezifische Konstrukte nutzt.
Nach der Konvertierung kannst du den Output mit unserem SQL-Formatter formatieren. Brauchst du stattdessen ein ORM-Schema? Schau den SQL-zu-ORM-Konverter.