双变量SQL Server和双变量ASP.NET

沙戈哈德

在我的ASP Web项目中,我有一些双精度型变量。我也将这个变量存储在sql server数据库中。我在互联网信息中发现,浮动数据类型将是最好的。但是Sql Server接受带有逗号的数字,例如“ 1,3”,“ 12,7”。在ASP代码中,我有双变量,其点如“ 1.3”,“ 2.7”等...当我尝试在ASP网络中使用带逗号的数字时,我收到错误“期望的标识符”。我试图将数据类型更改为sql server中的nvachar,并且可以工作,但是使用查询和“ Order BY columnNameWithDoubleNumber DESC”存在很多问题,因为我收到了意外的结果。拜托,你能帮我吗?:/

古法

您正在将数字与数字的文本表示混合在一起。作为数字,该值没有任何特定的格式,仅当您将数字转换为字符串或将字符串解析为数字时,文化设置才会起作用。

如果将数字以文本形式存储在数据库中,则在尝试对其进行排序时会将其作为文本进行比较。您应该将数字存储为数字,然后将其正确排序。

如果您在ASP.NET代码中有一个双精度值,并在使用参数的查询中将其发送,则十进制分隔符没有文化上的问题。

如果要将十进制值连接到SQL查询中(不建议这样做),则可以使用句点作为十进制分隔符。SQL始终使用句点作为小数点分隔符,就像在ASP.NET代码中使用双精度字面量一样。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章