Db2 for i CLI 函数中的字符串截断
如果输出字符串无法放入缓冲区,Db2 for i调用级接口 (CLI) 会将字符串截断到比缓冲区大小少一个的长度,并写入空结束符。
如果发生截断,那么该函数通过指示截断返回 SQL_SUCCESS_WITH_INFO 和 SQLSTATE。 然后,应用程序可以将缓冲区长度与输出长度进行比较,以确定截断了哪个字符串。
例如,如果 SQLFetch() 返回 SQL_SUCCESS_WITH_INFO ,并且 SQLSTATE 为 01004 ,那么与列绑定的至少一个缓冲区太小,无法保存数据。 对于绑定到列的每个缓冲区,应用程序可以将缓冲区长度与输出长度进行比较,并确定截断的列。