Supporto di FOR XML per i tipi di dati stringa

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di Azure

Il codice XML generato dagli spazi vuoti FOR XML nei dati viene sostituito con delle entità.

Nell'esempio seguente viene creata la tabella T e vengono inseriti dati di esempio che includono i caratteri di avanzamento riga, ritorno a capo e tabulazione. L'istruzione SELECT recupera i dati dalla tabella.

CREATE TABLE T
(
  c1 int identity primary key,
  c2 varchar(100)
);
GO

INSERT T (c2) VALUES ('Special character 0xD for carriage return ' + convert(varchar(10), 0xD) + ' after carriage return');
INSERT T (c2) VALUES ('Special character 0x9 for tab ' + convert(varchar(10), 0x9) + ' after tab' );
INSERT T (c2) VALUES ('Special character 0xA for line feed ' + convert(varchar(10), 0xA) + ' after line feed');
GO
SELECT *
FROM T
FOR XML AUTO;
GO

Risultato:

<T c1="1" c2="Special character 0xD for carriage return
after carriage return" />
<T c1="2" c2="Special character 0x9 for tab     after tab" />
<T c1="3" c2="Special character 0xA for line feed
after line feed" />

Dalla query precedente si noti quanto segue:

  • Il carattere di ritorno a capo nella prima riga viene sostituito con l'entità .

  • Il carattere di tabulazione nella seconda riga viene sostituito con l'entità .

  • Il carattere di avanzamento riga nella terza riga viene sostituito con l'entità .

Vedi anche