我正在将代码从Delphi 2007 + AnyDac
移动到Delphi XE4 + FireDac
。在AnyDac
的情况下,所有空字符串都像NULL
一样存储,而在FireDac
中,所有空串都像空字符串''
一样存储。
我需要回到NULL。最好的方法是什么?我使用params:存储到DB
ADQuery.Params.ParamByName('Code').Value :=Code;
将StrsEmpty2Null
选项包含(在对象检查器中将其设置为True)到数据集对象的FormatOptions
。参考资料说(我强调):
控制将零长度字符串值转换为NULL值。使用StrsEmpty2Null属性控制FireDAC应将长度为零的字符串值转换为NULL值(True)或not(False)默认值为False。