Was dieses Tool macht
Zwei Dinge: Es verdoppelt jedes Apostroph — so schreibt ANSI-SQL ein Apostroph innerhalb eines Literals — und fasst das Ergebnis ein, sodass ein vollständiges Literal zurückkommt.
O'Brien → 'O''Brien'
Standard-SQL kennt keine Backslash-Maskierung, mehr wird nicht umgeformt.
Die Einfassung ist es, die den Hin- und Rückweg exakt macht. Ohne sie wird ein einzelnes Apostroph zu '', was das Entmaskieren als leere Zeichenkette in Anführungszeichen liest — das Zeichen verschwindet. PostgreSQLs quote_literal() und SqlString.escape() aus Node liefern aus demselben Grund die eingefasste Form. Schalten Sie Mit Quotes ab, wenn Sie nur das Innere brauchen, zum Einfügen zwischen eigene Apostrophe; diese Form ist nicht umkehrbar.
Bitte vor der Verwendung lesen
Anführungszeichen zu maskieren ist kein Schutz vor SQL-Injection. Es ist eine Syntaxhilfe, keine Sicherheitsgrenze. Jeder Wert, der von einem Benutzer, einer Anfrage, einer Datei oder einem anderen System stammt, gehört in eine parametrisierte Abfrage — einen Platzhalter, den der Treiber getrennt bindet, sodass der Wert nie Teil des Anweisungstexts wird und keine noch so sorgfältige Maskierung die Bedeutung der Abfrage ändern kann.
Dieses Tool ist für den anderen Fall: ein Literal, das Sie selbst in eine Migration, ein Testdatenset oder ein einmaliges SELECT tippen, dessen Text ein Apostroph enthält und für das Sie die richtige Form wollen, ohne Anführungszeichen zu zählen.
Einschränkung nach Dialekt
Die ANSI-Regel ist der sicherste gemeinsame Nenner, aber nicht allgemeingültig. MySQL behandelt — sofern es nicht mit NO_BACKSLASH_ESCAPES läuft — auch \ als Escape-Zeichen in Literalen, ein Wert mit abschließendem Backslash ist durch bloßes Verdoppeln der Anführungszeichen also nicht vollständig abgedeckt. Prüfen Sie Ihren Dialekt, bevor Sie sich hierauf für etwas anderes als handgeschriebenes SQL verlassen.
Datenschutz ab Werk
Alles läuft lokal in deinem Browser mit JavaScript. Deine Daten werden nie hochgeladen, wodurch das Tool auch für sensible Inhalte sicher ist und offline funktioniert.