gpt4 book ai didi

c# - 将非常小的 double 转换为 SQL float 的问题

转载 作者:行者123 更新时间:2023-11-30 22:50:02 26 4
gpt4 key购买 nike

我试图在 MS SQL 2005 中将 C# double 作为 float 存储。但是,似乎有一系列小数字是有效的 double 但不是有效的 float 。例如,当我尝试存储值 1e-320 时,出现错误“提供的值不是浮点类型的有效实例”。

这与 SQL float 的文档一致,其最小值为 2.23e-308 http://msdn.microsoft.com/en-us/library/ms173773.aspx

以及 C# double 的文档,其最小值为 5.0e-324 http://msdn.microsoft.com/en-us/library/678hzkk9(VS.71).aspx

所以我的问题是处理此问题的最佳方法是什么 - 我可以将 double 转换为有效的 SQL float 吗?

最佳答案

选项:

  • 将其存储为字符串并依靠 C# 来验证/理解它
  • 分别存储尾数和指数:1和-320并在数据库外重构

你不能做什么:

  • 更改为小数将不起作用,因为这样您最多有 38 位小数

编辑:

SQL Server 就是不理解这个数字:无论使用什么客户端库或 c# 数据类型或技巧,它都不能作为数字存储在 SQL Server 中。

关于c# - 将非常小的 double 转换为 SQL float 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/781757/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com