Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Значение параметра по умолчанию  [new]
waszkiewicz
Member

Откуда:
Сообщений: 1094
Так низзя?
alter PROCEDURE Get43Inv
				@date datetime=cast(cast(GETDATE() as DATE) as datetime)
AS
21 авг 13, 13:51    [14735971]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
Glory
Member

Откуда:
Сообщений: 104751
BOL
default
Is a default value for the parameter. If a default value is defined, the procedure can be executed without specifying a value for that parameter. The default must be a constant or it can be NULL. If the procedure uses the parameter with the LIKE keyword, it can include the following wildcard characters: % _ [] and [^].
21 авг 13, 13:52    [14735980]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
waszkiewicz,

мона
21 авг 13, 13:53    [14735989]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
waszkiewicz
Member

Откуда:
Сообщений: 1094
StarikNavy
waszkiewicz,

мона

а не хочет. Glory прав
21 авг 13, 13:55    [14736008]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
waszkiewicz
Member

Откуда:
Сообщений: 1094
waszkiewicz,

По-ходу даже сами параметры должны быть константами
21 авг 13, 13:56    [14736015]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
Glory
Member

Откуда:
Сообщений: 104751
waszkiewicz
По-ходу даже сами параметры должны быть константами

Или переменными.
21 авг 13, 13:58    [14736037]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
iap
Member

Откуда: Москва
Сообщений: 47194
waszkiewicz,

что мешает обнулить время параметра внутри процедуры?
Или даже сделать параметр типа DATE сразу?
21 авг 13, 14:07    [14736115]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
alter PROCEDURE Get43Inv
				@date datetime=null
AS
 
if @date is null
set @date =cast(cast(GETDATE() as DATE) as datetime)
...
 


если вам такая логика нужна
21 авг 13, 14:56    [14736551]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
StarikNavy
alter PROCEDURE Get43Inv
				@date datetime=null
AS
 
if @date is null
set @date =cast(cast(GETDATE() as DATE) as datetime)
...
 


если вам такая логика нужна

при явной передаче null печаль будет
21 авг 13, 15:45    [14737069]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
Зайцев Фёдор,

да
21 авг 13, 17:07    [14737842]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
waszkiewicz
Member

Откуда:
Сообщений: 1094
Зайцев Фёдор
StarikNavy
alter PROCEDURE Get43Inv
				@date datetime=null
AS
 
if @date is null
set @date =cast(cast(GETDATE() as DATE) as datetime)
...
 


если вам такая логика нужна

при явной передаче null печаль будет


Какая, интересно?
exec Get43Inv null
нормально отработал
21 авг 13, 18:19    [14738232]     Ответить | Цитировать Сообщить модератору
 Re: Значение параметра по умолчанию  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2428
waszkiewicz
Какая, интересно?
exec Get43Inv null
нормально отработал


не правильно работает, если вы хотите именно _null_ передать.
собственно если такое надо, тоже сто раз обсуждалось, даже сегодня:
https://www.sql.ru/forum/1042480/formirovanie-usloviya-where
22 авг 13, 09:42    [14739649]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить