Was dieser SQL-Formatter tut
Dieses Werkzeug hat zwei Aufgaben. Zunächst formatiert es SQL: eine Klausel pro Zeile, konsistente Einziehung, Groß- oder Kleinbuchstaben-Schlüsselwörter und lesbare JOIN- und CASE-Blöcke, unter Verwendung der im Kampf getesteten sql-formatter-Engine mit dialektbewusstem Parsen. Zweitens führt es ** Grunddialektkonvertierung** zwischen MySQL, PostgreSQL, SQLite und SQL Server durch und behandelt die Unterschiede, die am häufigsten beim Bewegen einer Abfrage oder eines Schemas zwischen Datenbanken auftreten. Alles läuft lokal, so dass Produktionsanfragen mit echten Tabellennamen nie Ihren Browser verlassen.
So verwenden Sie es
- Passt SQL in die Eingabe ein.
- Wählen Sie den Quelldialekt und, wenn Sie konvertieren möchten, einen Zieldialekt. Lassen Sie das Ziel als "behalten" auf nur Format.
- Wählen Sie den Schlüsselwortfall und die Einschlagbreite aus.
- Überprüfen Sie die Anmerkungen: Alles, was der Konverter nicht sicher übersetzen konnte, ist dort aufgeführt.
- Das Ergebnis kopieren.
Was der Konverter verarbeitet
- Identifikator mit Anführungszeichen:
`name`(MySQL) ↔"name"(PostgreSQL/SQLite) ↔[name](SQL Server). - ** Grenzwerte der Zeilen:**
LIMIT n OFFSET mTOP nOFFSET m ROWS FETCH NEXT n ROWS ONLY. - Auto-Zunahme:
AUTO_INCREMENTSERIAL/GENERATED ... AS IDENTITYAUTOINCREMENTIDENTITY(1,1). - ** Häufige Typen:**
DATETIME/TIMESTAMP,TINYINT(1)/BOOLEAN/BIT,NVARCHAR,TEXT,BLOB/BYTEA/VARBINARY(MAX). - ** Funktionen:**
NOW()/GETDATE()/CURRENT_TIMESTAMP,IFNULL/ISNULL/COALESCE,RAND()/RANDOM(),CONCAT||. - Stringliterals und Kommentare sind geschützt, sodass ein Schlüsselwort innerhalb von
'quotes'nie neu geschrieben wird.
Einschränkungen
Die Dialektkonvertierung ist musterbasiert, kein vollständiger Compiler. Speicherte Verfahren, Auslöser, herstellerspezifische Funktionen (Window-Frame-Quirks, JSON-Operatoren, MERGE, ON DUPLICATE KEY vs. ON CONFLICT) und Zusammenstellungsdetails müssen manuell überprüft werden. Die Ausgabe als starker Erstentwurf behandeln und gegen die Zieldatenbank testen.