Запрос данных XML из SQL2000 (XML, сохраненный непосредственно в ячейке, несколько строк) - PullRequest
0 голосов
/ 30 октября 2009

Здравствуйте, у меня проблема с получением данных XML с сервера SQL2000.

Структура таблицы следующая:

ID   Name   XML
1    Name1  <Root><DATA1>1-Data1</DATA2><DATA1>1-Data2</DATA2></Root>
2    Name2  <Root><DATA1>2-Data1</DATA2><DATA1>2-Data2</DATA2></Root>
3    Name3  <Root><DATA1>3-Data1</DATA2><DATA1>3-Data2</DATA2></Root>

Как я могу получить результат следующим образом:

ID   Name   Data1   Data2
1    Name1  1-Data1 1-Data2
2    Name2  2-Data1 2-Data2
3    Name3  3-Data1 3-Data2

Я новый SQL2000. Возможен ли такой запрос в SQL2000?

Спасибо за вашу помощь заранее!

1 Ответ

0 голосов
/ 30 октября 2009

В SQL Server 2005 и более поздних версиях это не составило бы никаких проблем - если ваш XML очень корректен, то есть:

<Root> 
    <DATA1>1-Data1</DATA2>
    <DATA1>1-Data2</DATA2>
</Root>

У вас не может быть открывающего тега <DATA1>, а затем закрывающего тега </DATA2> - это неправильно сформированный XML, и никакой механизм синтаксического анализа XML не сможет его обработать ....

Но SQL Server 2000 на самом деле не поддерживает обработку XML (он может импортировать XML и выплевывать XML, но на самом деле не может его обработать) - боюсь, вам не повезло с версией 2000 года.

...