Invoer

Modus:

Uitvoer

Wat is SQL-escaping?

Heeft u ooit een SQL-query gebouwd met gebruikersinvoer die crashte omdat iemand een naam als O'Brien invoerde? Dat apostrof breekt de query — en erger nog, zonder escaping opent het de deur voor SQL-injectieaanvallen, een van de meest voorkomende kwetsbaarheden in de OWASP Top 10. SQL-escaping converteert speciale tekens zodat strings veilig in SQL-query's kunnen worden ingesloten. Hoewel geparametriseerde query's de gouden standaard zijn, is handmatig escaping nodig bij verouderde systemen. Referenties: PostgreSQL string documentatie en MySQL string literalen.

De meest gebruikelijke escape in SQL is het verdubbelen van enkelvoudige aanhalingstekens: ' wordt ''.

Hoe de SQL-escape-tool te gebruiken

1

Plak uw SQL-string

Plak de SQL-string die u wilt escapen in de invoereditor.

2

Kies een modus

Selecteer Escapen of Unescapen.

3

Kopiëren of downloaden

Kopieer het resultaat of download het als .sql-bestand.

SQL-escape-voorbeeld

Hier is een voorbeeld van SQL-string-escaping:

Ruwe SQL-string

SQL-invoer

Geëscapete SQL-string

Geëscapete SQL

Wanneer is SQL-escaping belangrijk?

Escape altijd gebruikersinvoer voordat u deze in SQL-query's opneemt om SQL-injectie te voorkomen.

Gebruik de SQL-formatter om uw SQL-query's te formatteren.

Veelgestelde vragen

Welke tekens behandelt SQL-escaping?

Enkelvoudige aanhalingstekens ' worden verdubbeld naar '' (standaard SQL). Backslashes \ worden verdubbeld naar \\ (MySQL en andere). Dekt MySQL, PostgreSQL, SQLite en SQL Server.

Moet ik SQL-escaping gebruiken in plaats van geparametriseerde query's?

Nee — geparametriseerde query's zijn altijd de voorkeursbenadering voor nieuwe code. SQL-escaping is nuttig bij verouderde systemen of het opschonen van gegevens buiten de applicatiecode.

Werkt dit voor MySQL, PostgreSQL en SQL Server?

Ja voor gangbare gevallen. Verdubbeling van aanhalingstekens is standaard in alle grote databases. Backslash-escaping is MySQL-specifiek — PostgreSQL gebruikt standaard verdubbeling of E'...'-strings.

Worden mijn SQL-gegevens naar een server gestuurd?

Nee. Alles wordt in uw browser verwerkt. Uw SQL-strings verlaten uw apparaat nooit — geen backend, geen logging.

Wat is SQL-injectie en hoe helpt escaping?

SQL-injectie is een aanval waarbij kwaadaardige invoer onbedoelde SQL-opdrachten uitvoert. Correcte escaping voorkomt dat geïnjecteerde tekens worden geïnterpreteerd als SQL-syntaxis.

Gerelateerde tools

Referenties: OWASP SQL Injection