2015-04-21 2 views
0

Использование Firebird SQL и Delphi в течение многих лет Я всегда регистрировал свой собственный Blob Filters с использованием FBPlus от Devrace.Регистрация фильтра Firebird Blob с использованием FireDac (Delphi)

Поскольку Delphi теперь поставляется с FireDac, я надеюсь перейти к этой технологии, исключив требование сторонних компонентов доступа к данным.

Есть ли у кого-нибудь опыт регистрации фильтров Firebird SQL Blob в FireDac? Хотя я могу просто получить доступ к полям в виде двоичных данных и выполнить подпрограммы для декомпрессии и т. Д., Я бы предпочел получить доступ на полевом уровне через движок.

+1

Фильтры Blob являются серверными, и их регистрация только выполняет DDL, с которым вы связаны. Не могли бы вы описать, в какой конкретной проблеме вы столкнулись? Помогла ли FBPlus поддерживать клиентские blob-фильтры (какой афайк не является частью самой Firebird)? –

+0

@MarkRotteveel. Исследуя это, вы на 100% верны, FIBPlus действительно делал не что иное, как перехват полей blob и применение клиентской части фильтров. Эта функциональность не имела ничего общего с Firebird, хотя авторы явно заимствовали идею у самой Firebird. Я создал собственный перехват в FireDac, чтобы проверить подтип blob и применить соответствующий фильтр локально. Пожалуйста, внесите свой комментарий в ответ, так как нет лучшего ответа на этот вопрос. – Reallyethical

ответ

1

Фильтры blob-фильтров Firebird являются серверными (для преобразования одного типа blob в другой), и их регистрация просто выполняет DDL, с которым вы связались. Похоже, что FBPlus также поддерживает blob-фильтры clientside (как подтверждается вашим комментарием), а именно - afaik - не стандартная функция Firebird.

Вам понадобится повторить эту функцию, вызвав фильтр blob самостоятельно в вашем коде.

Смежные вопросы