|
|
|
Помогите разобраться с хранимой процедурой, плизз...
|
|||
|---|---|---|---|
|
#18+
В общем, надо получить следующий номер в группе. При выполнении первой процедуры ничего не происходит. Почему? Create PROCEDURE H_Guest_SetNum /* номер гостя в группе */ @IdGuestGroup INT, @NumGUEST INT OUTPUT AS IF (@IdGuestGroup is NULL) SET @NumGuest = NULL ELSE BEGIN SELECT @IdGuestGroup = IdGuestGroup FROM H_GuestGroup WHERE IdGuestGroup = @IdGuestGroup EXEC J_Num_IU @IdGuestGroup, @NumGuest END CREATE PROCEDURE J_Num_IU /* обновление J_Num */ @NumGroup INT = NULL, @NUMGUEST INT OUTPUT AS SELECT @NumGuest = NumGuest + 1 FROM J_Num WHERE NumGroup = @NumGroup IF (@NumGuest IS NULL) BEGIN INSERT INTO J_Num (NumGroup, NumGuest) VALUES (@NumGroup,1) SET @NumGuest = 1 END ELSE UPDATE J_Num SET NumGuest = @NumGuest WHERE NumGroup =@NumGroup С уважением, Дмитрий ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2002, 12:12:24 |
|
||
|
Помогите разобраться с хранимой процедурой, плизз...
|
|||
|---|---|---|---|
|
#18+
В первой процедуре надо вызывать вторую так: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2002, 12:27:11 |
|
||
|
Помогите разобраться с хранимой процедурой, плизз...
|
|||
|---|---|---|---|
|
#18+
1. Выражение Код: plaintext 1. 2. поскольку выполняется в ветке, где @IdGuestGroup не NULL, не приводит ни к каким изменениям в значении переменной и является лишним. 2. Для возврата параметра из процедуры следует пользоваться синтаксисом Код: plaintext 3. Процедуру H_Guest_SetNum следует вызывать с таким же синтаксисом (если хотите что-то вернуть в переменную @NumGUEST) С уважением, Александр Степанов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2002, 12:53:37 |
|
||
|
Помогите разобраться с хранимой процедурой, плизз...
|
|||
|---|---|---|---|
|
#18+
В дополнение: каюсь, допустил ошибку. Выражение Код: plaintext 1. 2. 3. Приведет к присваиванию NULL переменной, если не найдется строк в таблице H_GuestGroup с IdGuestGroup = @IdGuestGroup. В очередной раз кляну себя за невнимательность :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2002, 14:15:20 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32048867&tid=1820527]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
48ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 327ms |

| 0 / 0 |
