Работа с XML в 2000 сервере

deadok
Дата: 19.01.2009 13:15:21
Версия сервер: Microsoft SQL Server 2000 - 8.00.760 (Intel X86) Dec 17 2002 14:22:05 Copyright (c) 1988-2003 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)
Итак собственно задача:
есть таблица declare @ref table (ID int)
задача собрать ID из таблицы в строку XML
Пробовал вот так, ругается
declare @t varchar(4000)
Select @t =(Select ID from @ref
FOR XML Auto)

подскажите какие есть еще Вараинты?
Glory
Дата: 19.01.2009 13:26:17
Ну если вам нужен varchar, то и "собирайте" строку varchar, а не xml
deadok
Дата: 19.01.2009 13:30:57
проблема как раз в том чтобы уйти от сбора строки, потмоу как это будет очень трудоемка так как таблица @ref огромна.
Glory
Дата: 19.01.2009 13:33:40
deadok
проблема как раз в том чтобы уйти от сбора строки, потмоу как это будет очень трудоемка так как таблица @ref огромна.

В SQL Server 2000 нет типа данных xml.
Поэтому на стороне сервера вам придется работать с типом varchar
И длина скрипта не будет зависеть от размера таблицы @ref
deadok
Дата: 19.01.2009 13:38:48
дело не в длинне скрипта, а во времени его выполнения,мне необходима строка Xml формата, я из таблицы знаю как собрать ее циклом, может есть другие менее трудоемкие варианты?
Glory
Дата: 19.01.2009 13:40:41
deadok
дело не в длинне скрипта, а во времени его выполнения,мне необходима строка Xml формата, я из таблицы знаю как собрать ее циклом, может есть другие менее трудоемкие варианты?

Еще раз
В SQL Server 2000 нет типа данных xml.
Поэтому на стороне сервера вам придется работать с типом varchar
deadok
Дата: 19.01.2009 13:44:26
но мне никто не мешает в varchar поместить вот такую структуру
<ROOT>
<ID>1</ID>
...
...
...
<ID>1000000</ID>

</ROOT>
deadok
Дата: 19.01.2009 13:45:15
Хотя это уже не совсем XML
Glory
Дата: 19.01.2009 13:45:53
deadok
но мне никто не мешает в varchar поместить вот такую структуру
<ROOT>
<ID>1</ID>
...
...
...
<ID>1000000</ID>

</ROOT>

Вот и помещайте.
deadok
Дата: 19.01.2009 13:51:06
Подскажите есть варианты как это сделать без цикла?