SQL Server 2005 varchar丢失小数位转换为小数

dig*_*uru 0 sql-server decimal

Declare @BadDecimal varchar(5)
Set @BadDecimal = '4.5'
Declare @GoodDecimal Decimal
Set @GoodDecimal = @BadDecimal
Select @GoodDecimal

--Outputs 5
Run Code Online (Sandbox Code Playgroud)

为什么?

Coe*_*tje 6

尝试

Declare @GoodDecimal Decimal(2,1)
Run Code Online (Sandbox Code Playgroud)

编辑:请求后更改为(2,1).