将 NAN(从 C++ 代码)写入 sql 服务器 2012

Write NAN (from C++ code) to sql server 2012

我在数据库 table 中有一个 float, null 参数。
在我的 C++11 应用程序中,我想将 nan 值写入 DB table 作为 NULL

我正在做以下事情:
1.将nan转换为L"NULL"并存入CComBSTR
2. 在数据库中,将此字符串转换回 NULL 并将其写入 float 列。

我的问题: 在这种情况下,将 nan 写入数据库有更好的方法吗?
具体来说,我想避免这种 CComBstr 转换,因为更新频率非常高并且在 table.

中使用了许多浮点参数

我得到了另一个看起来比这个更好的解决方案,所以想分享这个:
有多个宏用于来自数据库的 reading/writing 数据,例如 COLUMN_ENTRY_STATUSCOLUMN_ENTRY_TYPE_STATUS 等...

这些为每个数据库字段采用 status 标志。
-写入时,如果值为NAN,将status标志设置为DBSTATUS_S_ISNULL,DB本身会将float字段值设置为NULL
-如果 status 标志为 DBSTATUS_S_ISNULL,则读取时将值设置为 NAN