目前,我能够从 IBM DB2 中检索值。我需要做的是查看该值是否为 null 时的样子。
在我的代码中,我设置了一个条件语句来检查大多数空值,除非我显然不知道如果在我的 C 代码中从 DB2 检索空值会是什么样。
目前我有: 如果(pchr == NULL || pchr == “Null” || pchr == "NULL"|| pchr == '\0' || pchr == “null”)
其中 pchr 是一个字符指针。
显然,此条件语句无法从 DB2 中检测到空值。任何帮助都会很棒
最佳答案
Null 通常用单独的变量表示。对于 DB2嵌入式 SQL,它看起来像这样:
EXEC SQL BEGIN DECLARE SECTION;
VARCHAR pchr[PCHR_LEN+1]; /* nullable field we're interested in */
short pchrInd; /* flag indicating field is currently null */
EXEC SQL END DECLARE SECTION;
...
EXEC SQL SELECT phcr INTO :pchr:pchrInd FROM table; // or SELECT pchr INTO :pchr INDICATOR :pchrInd
if ( pchrInd )
// pchr is null
else
// process pchr
关于c - 当从 C 代码中检索到来自 db2 的空值时,它是什么样子的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39708058/