Eingabe

Modus:

Ausgabe

Was ist SQL-Escaping?

Haben Sie schon mal eine SQL-Abfrage mit Benutzereingaben gebaut, die dann wegen eines Apostroph in einem Namen wie O'Brien abgestürzt ist? Das ist nicht nur ein Bug — ohne Escaping öffnet es die Tür für SQL-Injection-Angriffe, eine der häufigsten Schwachstellen im OWASP Top 10. SQL-Escaping wandelt Sonderzeichen um, damit Strings sicher in SQL-Abfragen eingebettet werden können. Obwohl parametrisierte Abfragen der Goldstandard sind, ist manuelles Escaping bei Altsystemen, dynamischer SQL-Generierung oder Daten-Fixes oft notwendig. Referenzen: PostgreSQL-Stringdokumentation und MySQL-String-Literale.

Das häufigste Escape in SQL ist das Verdoppeln einfacher Anführungszeichen: ' wird zu ''.

So verwenden Sie das SQL-Escape-Tool

1

SQL-String einfügen

Fügen Sie den SQL-String ein, den Sie escapen möchten.

2

Modus wählen

Wählen Sie Escapen oder Unescapen.

3

Kopieren oder herunterladen

Kopieren Sie das Ergebnis oder laden Sie es als .sql-Datei herunter.

SQL-Escape-Beispiel

Hier ist ein Beispiel für SQL-String-Escaping:

Roher SQL-String

SQL-Eingabe

Escapeter SQL-String

Escapeter SQL

Wann ist SQL-Escaping wichtig?

Escapen Sie immer benutzerseitige Eingaben vor der Verwendung in SQL-Abfragen, um SQL-Injection zu verhindern.

Für das Formatieren von SQL-Abfragen verwenden Sie den SQL-Formatierer.

Häufig gestellte Fragen

Welche Zeichen behandelt SQL-Escaping?

Einfache Anführungszeichen ' werden zu '' verdoppelt (Standard-SQL). Backslashes \ werden zu \\ verdoppelt (MySQL und andere). Das deckt MySQL, PostgreSQL, SQLite und SQL Server ab.

Soll ich SQL-Escaping statt parametrisierter Abfragen verwenden?

Nein — parametrisierte Abfragen sind immer der bevorzugte Ansatz für neuen Code. SQL-Escaping ist nützlich bei Altsystemen oder wenn Sie Daten außerhalb des Anwendungscodes bereinigen müssen.

Funktioniert das Tool für MySQL, PostgreSQL und SQL Server?

Ja für gängige Fälle. Apostrophe-Verdopplung ist Standard in allen großen Datenbanken. Backslash-Escaping ist MySQL-spezifisch — PostgreSQL verwendet Standardverdopplung oder E'...'-Strings.

Werden meine SQL-Daten an einen Server gesendet?

Nein. Alles läuft in Ihrem Browser. Ihre SQL-Strings verlassen Ihr Gerät nicht — kein Backend, keine Protokollierung.

Was ist SQL-Injection und wie hilft Escaping?

SQL-Injection ist ein Angriff, bei dem bösartige Eingaben aus einem SQL-String ausbrechen und unbeabsichtigte Befehle ausführen. Richtiges Escaping verhindert, dass injizierte Zeichen als SQL-Syntax interpretiert werden.

Verwandte Tools

Referenzen: OWASP SQL Injection