Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Вывод курсора в переменную  [new]
MotoCV
Member

Откуда: Уфа
Сообщений: 289
Здравствуйте, вопрос видимо дурацкий, но никак не могу разобраться.
Мне нужно весь столбец таблицы загнать в одну переменную:

DECLARE @ethcur nvarchar(1500)

DECLARE eth_cursor CURSOR FOR
	SELECT distinct 
		ntw.Name0
	from 
		v_GS_NETWORK_ADAPTER ntw 
	where 
		(ntw.ResourceID = 16777691) 
	order by ntw.Name0

OPEN eth_Cursor
FETCH NEXT FROM eth_cursor into @ethcur
WHILE @@FETCH_STATUS = 0
BEGIN
	print @ethcur
	set @ethcur +=  '; '
    FETCH NEXT FROM eth_cursor into @ethcur
END

print @ethcur
CLOSE eth_Cursor
DEALLOCATE eth_Cursor
8 авг 12, 13:49    [12981482]     Ответить | Цитировать Сообщить модератору
 Re: Вывод курсора в переменную  [new]
MotoCV
Member

Откуда: Уфа
Сообщений: 289
в общем вот эту переменную @ethcur мне нужно как-то прибавлять к другой переменной пока курсор выполняется
8 авг 12, 13:51    [12981500]     Ответить | Цитировать Сообщить модератору
 Re: Вывод курсора в переменную  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3033
почитайте это Сложение символьных полей в запросе
и курсор будет ненужен
8 авг 12, 13:51    [12981501]     Ответить | Цитировать Сообщить модератору
 Re: Вывод курсора в переменную  [new]
MotoCV
Member

Откуда: Уфа
Сообщений: 289
HandKot,

Selectom я знаю как сделать... но мне нужно через курсоры
8 авг 12, 13:52    [12981516]     Ответить | Цитировать Сообщить модератору
 Re: Вывод курсора в переменную  [new]
HandKot
Member

Откуда: Sergiev Posad
Сообщений: 3033
MotoCV
в общем вот эту переменную @ethcur мне нужно как-то прибавлять к другой переменной пока курсор выполняется


а для курсора, объявите еще одну переменную и в ней аккумулируйте данные

DECLARE @ethcur_buff nvarchar(max) = ''
...
BEGIN
	print @ethcur
	set @ethcur_buff = @ethcur_buff  + @ethcur +  '; '
    FETCH NEXT FROM eth_cursor into @ethcur
END
...


но курсоры - это зло
8 авг 12, 13:53    [12981529]     Ответить | Цитировать Сообщить модератору
 Re: Вывод курсора в переменную  [new]
SomewhereSomehow
Member

Откуда: Moscow
Сообщений: 2480
Блог
MotoCV,

Инициализируйте переменную перед сложением
DECLARE @ethcur nvarchar(1500) = '';

И все-таки, непонятно, откуда такая любовь к курсорам.
8 авг 12, 13:56    [12981546]     Ответить | Цитировать Сообщить модератору
 Re: Вывод курсора в переменную  [new]
MotoCV
Member

Откуда: Уфа
Сообщений: 289
HandKot,

Спасибо!!! Блин глаз замылился я пробовал так делать, что то не пошло, на твой пример посмотрел еще раз попробовал все заработало :)

HandKot
но курсоры - это зло

больше не буду )
8 авг 12, 13:58    [12981574]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить