Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.20;
Скачать: CL | DM;

Вниз

Аналог цикла (FB) для MSSQL   Найти похожие ветки 

 
RomanH ©   (2007-02-27 12:11) [0]

Здраствуйте мастера, подскажите аналогичную конструкцию для MSSQL.
for select men.men_id from men
    into :men_id
do
 begin
       suspend;
 end


 
Gin2   (2007-02-27 12:26) [1]

declare cursor - Shift+F1


 
ЮЮ ©   (2007-02-27 12:38) [2]

в SP или UDF?

Если именно subj-евую, то достаточно
 select men_id from men
:)


 
Ega23 ©   (2007-02-27 12:43) [3]


Declare @men_id int;
Declare Cur cursor local static for
 Select men_id from men;
Open Cur;

While(true)
begin
  Fetch Next from Cur into @men_id;
  if @@FETCH_STATUS<>0 Break;
  .......
end;

Close Cur;
Deallocate Cur;


 
ЮЮ ©   (2007-02-27 12:48) [4]


> Ega23 ©   (27.02.07 12:43) [3]

а где аналог для
 suspend;


 
Ega23 ©   (2007-02-27 13:04) [5]


> а где аналог для
>  suspend;
>



Set NoCount ON;
Create Table ##Temp_men_id (men_id int);
Declare @men_id int;
Declare Cur cursor local static for
Select men_id from men;
Open Cur;

While(true)
begin
 Fetch Next from Cur into @men_id;
 if @@FETCH_STATUS<>0 Break;
 Insert ##Temp_men_id Values (@men_id);
end;

Close Cur;
Deallocate Cur;

Set NoCount OFF;
Select * from ##Temp_men_id;
Drop table ##Temp_men_id;


Только вот нафига? проще select men_id from men...  :)


 
Danilka ©   (2007-03-01 10:45) [6]

[5] Ega23 ©   (27.02.07 13:04)
А почему именно глобальная временная таблица, а не локальная или вообще, не переменная типа table? Я обычно через переменную делаю, может какие-то подводные камни (с mssql мало работаю)?


 
Ega23 ©   (2007-03-01 11:05) [7]


> А почему именно глобальная временная таблица, а не локальная
> или вообще, не переменная типа table?


1. Это не глобальная временная таблица. Глобальная - с одним #. Те, что с двумя - видимы в пределах сессии.
2. переменную типа table нельзя передать в качестве параметра при, например, рекурсивном вызове SP.


 
Danilka ©   (2007-03-01 14:01) [8]

[7] Ega23 ©   (01.03.07 11:05)

Ошибаешься:
"Prefix local temporary table names with single number sign (#table_name), and prefix global temporary table names with a double number sign (##table_name)."

BOL, справка по CREATE TABLE.


 
Ega23 ©   (2007-03-01 14:05) [9]


> Danilka ©   (01.03.07 14:01) [8]


Тьфу, ё..
Бес попутал...
Конечно наоборот...
Это меня клинит...


 
RomanH ©   (2007-03-01 16:31) [10]


> Ega23 ©

Спасибо Вы как всегда с наглядным примером.



Страницы: 1 вся ветка

Текущий архив: 2007.05.20;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.047 c
15-1175834979
Sir John
2007-04-06 08:49
2007.05.20
Delphi 2007 for win 32


2-1177903516
>>DEATH<<
2007-04-30 07:25
2007.05.20
вопрос по диалапу


15-1176888379
Игорь М.
2007-04-18 13:26
2007.05.20
Чат в локальной сети


15-1177036036
Конференция
2007-04-20 06:27
2007.05.20
Внешний вид Delphi Studio 2005


2-1177942989
pound
2007-04-30 18:23
2007.05.20
где находится курсор в редактируемой ячейке TStringGrid.