В настоящее время я изучаю хранимые процедуры и пытаюсь выполнить простое упражнение по добавлению двух чисел, передав их в my sp. Проблема, с которой я столкнулся, - это преобразование типов данных и потеря данных. я определяю свою процедуру следующим образом:Сохраненные процедуры: добавление двух чисел путем передачи их в качестве параметров
create proc addn(@a float, @b float)
as
begin
declare @sum varchar
set @sum=cast((@[email protected]) as varchar)
print 'the sum of '+cast(@a as varchar)+' and '+cast(@b as varchar)+' is ' cast((@[email protected]) as varchar)
print @sum
end
Процедура вызывается следующим образом:
declare @a1 float, @b1 float
set @a1=41
set @b1=6.2
exec addn @a1,@b1
В результате я получаю:
the sum of 41 and 6.2 is 47.2
4
Теперь я могу Не понимаю, почему я получаю только 4 в @sum. Он хранит только первую цифру результата любого добавления, которое выполняется. Пожалуйста помоги!
Спасибо! Это очень хорошо отвечает на мой вопрос. – Akash
Добро пожаловать, в любое время :) – veljasije