![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Обнуление переменной ;MSSQL2000 [MSSQL, ]
KAA © (2001-12-04 10:28:00)Вот процедура:
CREATE PROCEDURE ManUnique
@FirstName varchar(50) = NULL,
@LastName varchar(50) = NULL,
@MiddleName varchar(50) = NULL,
@DTBorn datetime = NULL,
@UIDMan int = NULL OUTPUT
AS
SELECT @UIDMan=UID FROM list_man WHERE ((FirstName=@FirstName) and (LastName=@LastName) and (MiddleName=@MiddleName) and (Year(DTBorn)=Year(@DTBorn)) and (Month(DTBorn)=Month(@DTBorn)) and (Day(DTBorn)=Day(@DTBorn)))
GO
Если SELECT ничего не находит, процедура возвращает в переменной @UIDMan старое значение. А что же означает присваение NULL при объявлении переменной? Если перед выборкой поставить SET @UIDMan=NULL, то все нормально. Значит он не обнуляет значение.
Разъясните этот нюанс.
Гоша (2001-12-04 12:27:00) [1]А что такое "старое значение" ?
Как вызывается процедура ? (@UIDMan передается как вх. параметр ?)
"присваение NULL при объявлении переменной" - это есть DEFAULT значение