sql >> Databáze >  >> RDS >> Sqlserver

Jak funguje funkce STRING_ESCAPE() na serveru SQL Server (T-SQL)

V SQL Server T-SQL STRING_ESCAPE() funkce uvozuje speciální znaky v textech a vrací text s uvozenými znaky.

Při volání funkce zadáte text a typ escape jako argumenty.

Syntaxe

Syntaxe vypadá takto:

STRING_ESCAPE( text , type )

Kde text je text, který obsahuje jakékoli znaky, které mají být escapovány, a type určuje úniková pravidla, která se mají použít.

V současnosti jediná podporovaná hodnota pro type argument je 'json' .

Příklad 1 – Základní použití

Zde je příklad, jak to funguje:

SELECT STRING_ESCAPE('\', 'json') AS Result;

Výsledek:

+----------+
| Result   |
|----------|
| \\       |
+----------+

Zde je příklad, kdy je zakódováno lomítko:

SELECT STRING_ESCAPE('/', 'json') AS Result;

Výsledek:

+----------+
| Result   |
|----------|
| \/       |
+----------+

A zde je příklad s trochu větším textem:

SELECT STRING_ESCAPE('Free beer/wine with every lambo!', 'json') AS Result;

Výsledek:

+-----------------------------------+
| Result                            |
|-----------------------------------|
| Free beer\/wine with every lambo! |
+-----------------------------------+

Příklad 2 – Neplatný typ

V době psaní byla jediná podporovaná hodnota pro type parametr je 'json' . Pokud dodáme nepodporovanou hodnotu, stane se toto:

SELECT STRING_ESCAPE('\', 'oops') AS Result;

Výsledek:

An invalid value was specified for argument 2.

Escapovatelné znaky

V době psaní STRING_ESCAPE() Funkce může uniknout pouze speciálním znakům JSON uvedeným v následující tabulce:

Zvláštní znak Zakódovaná sekvence
Uvozovky (") \"
Obrácený solidus (\) \|
Solidus (/) \/
Backspace \b
Zdroj formuláře \f
Nový řádek \n
Vrácení vozíku \r
Karta Horizontální \t
Řídící znak Zakódovaná sekvence
CHAR(0) \u0000
CHAR(1) \u0001
CHAR(31) \u001f

  1. Otázky a odpovědi z naší série webinářů Parameter Sniffing

  2. Jak Access komunikuje se zdroji dat ODBC? Část 6

  3. Jak povolit trasování v aplikacích Oracle r12

  4. Zkontrolujte statistické cíle v PostgreSQL