如果我运行此查询在SSMS:十进制和真实值在SSMS与不同的小数点符号呈现
select convert(decimal(18,2),1.1), convert(real,1.1)
我会得到两个不同的小数点,“1.10”和“1,1”。
对于我当前的区域/区域设置,我期望,
可用作这两种情况下的小数点。
为什么SQL Server(或SQL Server Management Studio?)以不同的方式格式化小数和实数? 有没有什么办法可以配置这些东西?
当然,在我的代码中,我得到了正确的数据类型,并且可以显示正确的小数点,但是在使用实数和小数数据类型运行表时,我得到了小数点的混合使用,所以它有点乏味粘贴到Excel中。 在早期版本的SSMS /查询分析器中,这不是问题,但现在它是?
只是不要在数据库本身中使用解析。使用正确的字段类型并将数字和日期作为强类型参数传递。 –
我没有解析,我运行了一个查询,并期望输出与其他软件兼容,因此将结果粘贴到Excel中应该可以正常工作,而无需对结果使用格式化函数。 – neslekkiM
数值本身没有“局部小数点”,它们只是二进制值。数字文字总是使用'.'。本地化仅适用于将数字格式化为显示字符串时,解析用户提供的字符串或解析文本文件 –