2015-10-01 5 views
0

У меня есть запрос, который вычисляет сегменты между start = 6am и end = 10pm. Я хочу сохранить начальную и конечную переменные, чтобы дать возможность пользователю указать что-либо, поэтому я создал хранимую процедуру с переменной двух временных аргументов, но она не работает. Любая идея, почему и как ее исправить.Как передать только параметр времени хранимой процедуре в SQL Server

Create procedure spGetUptimeBetweenStartAndEnd 
(start as time, end as time) 
    Remaining query goes here 

Я попытался

spGetUptimeBetweenStartAndEnd 6, 10 

и

spGetUptimeBetweenStartAndEnd 6am, 10pm 

, но не повезло.

ответ

2

Для переменной или параметра time типа данных, по умолчанию строка буквальное формат передается клиенту вниз уровня является: hh:mm:ss[.nnnnnnn]

Таким образом, если предположить любой из вашего кода не изменяется времени по умолчанию строки в буквальном, если хранимая процедура spGetUptimeBetweenStartAndEnd использует параметры типа данных time, тогда вы должны отправить в него следующие значения:

spGetUptimeBetweenStartAndEnd '06:00:00.000000', '22:00:00.000000' 
Смежные вопросы