Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.026 c
2-1178196382
pavel_guzhanov
2007-05-03 16:46
2007.05.20
зависание при вставке записи в базу


15-1177340432
oldman
2007-04-23 19:00
2007.05.20
По мотивам веток про Гитлера и про Ельцина...


2-1177022043
Германн
2007-04-20 02:34
2007.05.20
Непонятки с OnResize


2-1177920614
Regent
2007-04-30 12:10
2007.05.20
ПЕРЕВЕСТИ Дробное число в строку.


15-1176822673
oldman
2007-04-17 19:11
2007.05.20
Никто не знает, как там поживает соратник Билла Гейтса?




   Наверх