我找不到soci :: i_ok和soci :: i_null常量的解释。它们在page中被提及为可能的数据状态,但它们的确切含义尚未定义。
我想知道soci :: i_ok是否为真是否意味着数据不为空?
(soci::i_ok == indicatorX) == (soci::i_null != indicatorX) ---?
答案 0 :(得分:0)
我在此页面的主题下找到了一些问题的解释:Handling nulls and other conditions。在这里分享,为了社区的利益。
根据文档,soci::i_ok
表示返回的值没有任何错误,并且包含非null值。 soci::i_null
表示该值为null,因为该列包含空值。
所以,是的,(soci::i_ok == indicatorX)
表示(soci::i_null != indicatorX)
,并且没有提取错误。由于soci::i_ok
包含soci::i_null
的使用,我猜这两个常量是出于不同的原因(例如,如果你想要一个明确的空值检查)。