我正在将代码从Delphi 2007 + AnyDac
移到Delphi XE4 + FireDac
。在AnyDac
情况下,所有空字符串都存储为NULL
,而在FireDac
中,所有空字符串都存储为空字符串''
。
我需要回到NULL。这样做的最佳方式是什么?我使用params存储到DB:
ADQuery.Params.ParamByName('Code').Value :=Code;
答案 0 :(得分:4)
包括(在对象检查器中将其设置为True)数据集对象的FormatOptions
的{{3}}选项。参考文献说(我强调):
控制零长度字符串值到NULL值的转换。使用StrsEmpty2Null属性来控制是否FireDAC 应该将长度为零的字符串值转换为NULL值(True)或 不(假)。 默认值为False 。