Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy do: SQL Server 2016 (13.x) i nowsze wersje
Azure SQL Database
Azure SQL Managed Instance
SQL database in Microsoft Fabric
Umożliwia ucieczkę znaków specjalnych w tekście i zwraca tekst ze znakami ucieczki. STRING_ESCAPE to funkcja deterministyczna wprowadzona w programie SQL Server 2016.
Transact-SQL konwencje składni
Składnia
STRING_ESCAPE( text , type )
Arguments
tekst
Jest wyrażeniemnvarchar reprezentującym obiekt, który powinien zostać uniknięty.
type
Ucieczka reguł, które zostaną zastosowane. Obecnie obsługiwana wartość to 'json'.
Typy zwracane
nvarchar(max) tekst ze znakiem specjalnym i kontrolnym. Obecnie STRING_ESCAPE może unikać tylko znaków specjalnych JSON wyświetlanych w poniższych tabelach.
| Znak specjalny | Zakodowana sekwencja |
|---|---|
| Cudzysłów (") | \" |
| Odwrotny solidus (\) | \\ |
| Solidus (/) | \/ |
| Klawisz Backspace | \b |
| Źródło danych formularzy | \f |
| Nowy wiersz | \n |
| Powrót karetki | \r |
| Zakładka pozioma | \t |
| Znak kontrolki | Zakodowana sekwencja |
|---|---|
| CHAR(0) | \u0000 |
| CHAR(1) | \u0001 |
| ...\ | ...\ |
| CHAR(31) | \u001f |
Uwagi
Przykłady
A. Tekst ucieczki zgodnie z regułami formatowania JSON
Poniższe zapytanie usuwa znaki specjalne przy użyciu reguł JSON i zwraca tekst ucieczki.
SELECT STRING_ESCAPE('\ /
\\ " ', 'json') AS escapedText;
Oto zestaw wyników.
escapedText
-------------------------------------------------------------
\\\t\/\n\\\\\t\"\t
B. Formatowanie obiektu JSON
Poniższe zapytanie tworzy tekst JSON na podstawie zmiennych liczbowych i ciągów oraz usuwa wszelkie specjalne znaki JSON w zmiennych.
SET @json = FORMATMESSAGE('{ "id": %d,"name": "%s", "surname": "%s" }',
17, STRING_ESCAPE(@name,'json'), STRING_ESCAPE(@surname,'json') );