NULL отсутствует при переходе от Anydac к Firedac

Я перемещаю код из Delphi 2007 + AnyDac в Delphi XE4 + FireDac, В AnyDac случай, когда все пустые строки были сохранены как NULL, И в FireDac все пустые строки хранятся как пустые строки '',

Мне нужно вернуться к NULL. Каков наилучший способ сделать это? Я храню в БД, используя параметры:

ADQuery.Params.ParamByName('Code').Value :=Code;

1 ответ

Решение

Включить (установите значение True в Инспекторе объектов) StrsEmpty2Null вариант к FormatOptions вашего объекта набора данных. Ссылка говорит (подчеркнуто мной):

Управляет преобразованием строковых значений нулевой длины в значение NULL. Используйте свойство StrsEmpty2Null, чтобы контролировать, должен ли FireDAC преобразовывать строковые значения с нулевой длиной в значение NULL (True) или нет (False). Значением по умолчанию является False.

Другие вопросы по тегам