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

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

Обнуление переменной ;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 значение


Наверх

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