Я следую за переносом данных на основе XML с использованием FOR XML AUTO. Когда столбец, содержащий управляющий символ встречалось и XML преобразования, как показано ниже была сделана попытка, это привело к исключению:Обработка управляющих символов в XML
DECLARE @TrialData NVARCHAR(200) = ''; --Not empty string..contains a control character '<-'
DECLARE @TrialDataInHex VARBINARY(100)
SET @TrialDataInHex = CONVERT(VARBINARY(100),@TrialData)
SELECT @TrialDataInHex; -- returns 0x1B00 looks like this '<-'
Теперь, когда я пытаюсь вставить же в переменную XML, как показано ниже
DECLARE @a_XML XML;
SET @a_XML = @TrialData;
в результате
XML синтаксический: строка 0, символ 0, непризнанный вход подписи
Может ли кто-нибудь предположить, как управляющие символы обычно обрабатываются, когда используется среда XML FROM SQL?
Это не работает на T-SQL. Можете ли вы предложить эквивалент t-sql. Тот, который работает на MS SQL Server. Я попытался использовать XML AUTO PATH/ELEMENTS, но ни один из них не позволяет мне сохранить этот управляющий символ в XML-переменную. – surega
'SET @a_XML = '' + @TrialData + ' '' –
Stavr00
Дает вам ошибку: «Разбор XML: строка 1, символ 12, незаконный символ xml». Ваш ответ не работает с символами управления. – surega