У меня есть следующее значение xml в таблице в столбце. Мне нужно извлечь значение errorCode
с помощью запроса SQL.
Я пробовал следующий запрос, но он показывает ошибку:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<queryCalendarResponse xmlns="http://www.foobar.com/WS">
<queryCalendarReturn>
<errorCode>100</errorCode>
<errorMessage>Success</errorMessage>
</queryCalendarReturn>
</queryCalendarResponse>
</soapenv:Body>
</soapenv:Envelope>
SELECT
CAST(REPLACE(Response, 'utf-8', 'utf-16') AS XML).value('
(/soap:Envelope/soap:Body/queryCalendarResponse/queryCalendarReturn/errorCode)[1]', 'nvarchar(max)'), *
FROM
LogTable
WHERE
ID = 100
Я получаю эту ошибку:
XQuery [value ()]: имя «мыло» не обозначает пространство имен