Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как обработать записи, возвращаемые запросом [MSSQL]


Calm ©   (2002-11-22 11:13:00) 

Уважаемые мастера!
Нужно выполнить запрос и над полученными записями произвести некоторое сложноедействие.
В IB для этого есть конструкция FOR SELECT ... А как это написать под MS SQL?

Заранее благодарю за советы.


3JIA9I CyKA   (2002-11-22 11:36:00) [1]

8)


Calm   (2002-11-22 11:34:00) [2]

2 3JIA9I CyKA © (22.11.02 11:31)
И Вам спасибо. Предыдущее сообщение писал, не видя Вашего. Получить пример очень ценно.


Calm   (2002-11-22 11:32:00) [3]

Спасибовсем, особенно Александру Спелицину.
Читаю хелп, пытаюсь разобраться...


3JIA9I CyKA   (2002-11-22 11:31:00) [4]

use pubs
go
declare @au_id varchar(11)
declare c cursor for select au_id from authors
open c
fetch next from c into @au_id
while @@fetch_status = 0
begin
print @au_id
fetch next from c into @au_id
end
close c
deallocate c
go


Александр Спелицин   (2002-11-22 11:24:00) [5]

К сожалению Вы не указали, что должно быть с результатом.
Если это все нужно выдать клиентскому приложению в виде набора данных, то можно сделать так:

Create Table #Tmp (...)

Insert #Tmp (...)
Select ...
From ..., ..., ...
Where ...

Update #Tmp
Set ...
...

Select ... From #Tmp
Drop Table #Tmp /* Эта команда рекомендуется для связки Delphi (CBuilder) -> MSSQL*/


А если Вам нужно, чтобы изменения остались в базе, то используйте курсоры.
См. Declare Cursor в BOL.


Delirium   (2002-11-22 11:24:00) [6]

select ... into #result from ...
select ... from #result


stone   (2002-11-22 11:20:00) [7]

WHILE


Наверх

Титульная страница Поиск, карта сайта Написать письмо