我在SQL Server的企业管理器是用'SELECT 重量 FROM cp' 得到的值为两位小数,如下:
重量
0.56
0.58
0.54
而在SQL Server的查询分析器中同样输入用'SELECT 重量 FROM cp' 得到的值为何精度高了么很多,如下
重量
0.560000001
0.580000001
0.540000002
怪不得在Delphi用'SELECT 重量 FROM cp where 重量=0.56'找到0条记录
所以请问如何将数据写入SQL数据时防止后面的000001出现(在输入的时候我肯定只0.56输入),我在SQL数据库中的“重量”字段用的是float
重量
0.56
0.58
0.54
而在SQL Server的查询分析器中同样输入用'SELECT 重量 FROM cp' 得到的值为何精度高了么很多,如下
重量
0.560000001
0.580000001
0.540000002
怪不得在Delphi用'SELECT 重量 FROM cp where 重量=0.56'找到0条记录
所以请问如何将数据写入SQL数据时防止后面的000001出现(在输入的时候我肯定只0.56输入),我在SQL数据库中的“重量”字段用的是float
就会出现你说的那种情况.
定义成numberic,设置小数位数,就不会那样.
但是有一点要提醒一下,用了这个类型,在delphi 中用dbedit,或dbgrid 来显示的话,最多只显示4位小数.尽管在SQL server里可以显示>4位.