求助!浮点书存入时,出现不希望的自动舍入!!!
sql server 2000中创建一个表,并插入数据,再检索数据!
CREATE TABLE test (
[total_times] [int] NOT NULL ,
[qz_change] [numeric](18, 3) NOT NULL ,
[qz_total] [numeric](18, 3) NOT NULL
) ON [PRIMARY]
declare @a decimal,@b decimal,@c int
select @a=3.215,@b=0.17,@c=500
insert into p_parameter (total_times,qz_change,qz_total)
values(@c,@a,@b)
select * from p_parameter
查询结果为(500,3.000,.000)
在企业管理器里面查看结果为一条(500,3,0)的记录
我希望的的结果是(500,3.215,0.170)
请教大家,这是怎么回事??是不是数据库设置的问题??
------解决方案--------------------declare @a decimal(18,3),@b decimal(18,3),@c int
------解决方案--------------------declare @a decimal,@b decimal,@c int
你在定义时用了不正确的类型或参数设置,
而在赋值时,
即 select @c=0.170,@b=0.124
隐式转换, 高精度转低精度,造成了数据损失.