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

Откуда:
Сообщений: 19
Имеется курсор:

DECLARE DataBases_cursor CURSOR FOR

select mode from Log where ptim>@dtb and ptim<@dte order by ptim

OPEN DataBases_cursor
FETCH FROM DataBases_cursor into @@rmode
WHILE @@FETCH_STATUS = 0
BEGIN

set @@rmode = @@rmode+1
print @@rmode

FETCH NEXT FROM DataBases_cursor into @@rmode
END

На месте set @@rmode = @@rmode+1 - в дальнейшем будет более сложный алгоритм
print @@rmode - прекрасно возвращает все на экран, но хотелось бы получить все эти данные
в столбце как результат работы запроса
Подскажите как.
5 ноя 09, 07:02    [7883423]     Ответить | Цитировать Сообщить модератору
 Re: Возврат результатов из курсора  [new]
aleks2
Guest
yarik2001,

Варианты
1. САМЫЙ ПРАВИЛЬНЫЙ. Забить на курсоры - написать запрос.

2. МЕНЕЕ ПРАВИЛЬНЫЙ.
declare @t table (field1 ...)
...
WHILE @@FETCH_STATUS = 0
BEGIN
...
insert @t(field1) VALUES(@@rmode)
...
END

select * FROM @t
5 ноя 09, 07:33    [7883431]     Ответить | Цитировать Сообщить модератору
 Re: Возврат результатов из курсора  [new]
yarik2001
Member

Откуда:
Сообщений: 19
aleks2, спасибо, получилось
более простого (без переменной таблицы) способа нет?
5 ноя 09, 07:39    [7883434]     Ответить | Цитировать Сообщить модератору
 Re: Возврат результатов из курсора  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
yarik2001
aleks2, спасибо, получилось
более простого (без переменной таблицы) способа нет?
Есть
select mode from Log where ptim>@dtb and ptim<@dte order by ptim
5 ноя 09, 08:19    [7883471]     Ответить | Цитировать Сообщить модератору
 Re: Возврат результатов из курсора  [new]
iljy
Member

Откуда:
Сообщений: 8711
yarik2001,

есть
FETCH FROM DataBases_cursor
без into
5 ноя 09, 12:07    [7884780]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить