In SQL Server das T-SQL STRING_ESCAPE()
Funktion maskiert Sonderzeichen in Texten und gibt den Text mit maskierten Zeichen zurück.
Beim Aufruf der Funktion geben Sie den Text und den Escape-Typ als Argumente an.
Syntax
Die Syntax lautet wie folgt:
STRING_ESCAPE( text , type )
Wobei text ist der Text, der alle zu maskierenden Zeichen enthält, und type bestimmt die anzuwendenden Escape-Regeln.
Derzeit der einzige unterstützte Wert für type Argument ist 'json'
.
Beispiel 1 – Grundlegende Verwendung
Hier ist ein Beispiel dafür, wie es funktioniert:
SELECT STRING_ESCAPE('\', 'json') AS Result;
Ergebnis:
+----------+ | Result | |----------| | \\ | +----------+
Hier ist ein Beispiel, wo ein Schrägstrich maskiert wird:
SELECT STRING_ESCAPE('/', 'json') AS Result;
Ergebnis:
+----------+ | Result | |----------| | \/ | +----------+
Und hier ist ein Beispiel mit etwas mehr Text:
SELECT STRING_ESCAPE('Free beer/wine with every lambo!', 'json') AS Result;
Ergebnis:
+-----------------------------------+ | Result | |-----------------------------------| | Free beer\/wine with every lambo! | +-----------------------------------+
Beispiel 2 – Ungültiger Typ
Zum Zeitpunkt des Schreibens der einzige unterstützte Wert für type Parameter ist 'json'
. Folgendes passiert, wenn wir einen nicht unterstützten Wert angeben:
SELECT STRING_ESCAPE('\', 'oops') AS Result;
Ergebnis:
An invalid value was specified for argument 2.
Escapezeichen
Zum Zeitpunkt des Schreibens war der STRING_ESCAPE()
Die Funktion kann nur die in der folgenden Tabelle aufgeführten JSON-Sonderzeichen maskieren:
Sonderzeichen | Kodierte Sequenz |
---|---|
Anführungszeichen (") | \" |
Umgekehrter Solidus (\) | \| |
Solidus (/) | \/ |
Rücktaste | \b |
Formular-Feed | \f |
Neue Zeile | \n |
Wagenrücklauf | \r |
Horizontaler Reiter | \t |
Steuerzeichen | Kodierte Sequenz |
---|---|
CHAR(0) | \u0000 |
CHAR(1) | \u0001 |
… | … |
CHAR(31) | \u001f |