Процедура магазина работает нормально и печатает значения во время тестирования. Но как только я хочу использовать вывод в команде execute. он возвращает отпечатки из процедуры хранилища и 2 пустых строки из выполнения. я продолжаю читать код, но он выглядит хорошо для меня. Может кто-то посмотреть на это. Моя процедура магазина идет следующим образом:Значение выходного параметра не возвращается
if OBJECT_ID ('dbo.usp_OmzetPerFilm')is not null
drop procedure usp_OmzetPerFilm
go
create procedure usp_OmzetPerFilm
@film varchar(250),
@jaar int,
@jaaromzet float output ,
@TotaalBezoekers int output
as
begin
Select @TotaalBezoekers = Sum(AantalTickets ) from ticketVerkoop
Inner Join prijsTicket on prijsTicket .idPrijs = ticketVerkoop .idPrijs
Inner Join film on film.idfilm = ticketVerkoop .idfilm
where @jaar = Jaar and @film = film.naam
Select @jaarOmzet = Sum(prijsTicket .prijs * ticketVerkoop.AantalTickets ) from ticketVerkoop
Inner Join prijsTicket on prijsTicket .idPrijs = ticketVerkoop .idPrijs
Inner Join film on film.idfilm = ticketVerkoop .idfilm
where @jaar = Jaar and @film = film.naam
--This does work
print @jaaromzet
print @totaalBezoekers
end
go
Но когда я использую задачу выполнения. Он печатает только значения из процедуры хранения, но не из команды execute. Есть ли что-то, что мне не хватает?
Declare @TotaleOmzet int
Declare @TotaleBezoekers int
EXECUTE usp_OmzetPerFilm 'hobbit',2014,@TotaleOmzet, @TotaleBezoekers
-- This does not work ?
print @TotaleOmzet
print @TotaleBezoekers
Сначала я пытаюсь использовать десятичное число, но когда захочу хранить десятичную дробь в таблицу, она округляется. У вас есть предложение, как это сделать? – Greg
@ user3475722: 'DECIMAL' принимает как точность, так и масштаб, поэтому (например)' DECIMAL (10,5) 'может содержать 10 цифр с 5 цифрами после десятичной точки. 'DECIMAL' ничем не отличается от' DECIMAL (18,0) ', который не имеет дробной части. См. [Документы] (http://msdn.microsoft.com/ibrary/ms187746). –
Теперь я настрою свои таблицы. Я хочу дать вам +1, но, поскольку я нахожусь на низком уровне, у вас есть моя благодарность. – Greg