Про InterBase и текстовые блобы
Привет всем. С утром (по нашему времени) добрым.
Реализовав поддержку BASE64, о которой я написал в предыдущем сообщении, я начал писать тесты для этой кодовой страницы. И опять наступил на грабли InterBase с блобами. Утратил, одним словом, бдительность после FB2.5.
Суть граблей — InterBase не предоставляет клиенту сведения о кодовой странице колонок и параметров с текстовыми блобами. И если раньше (лет так пять назад) это было не очень актуально, то сейчас — просто убивает на месте. Вместо использования правильной кодовой страницы блоба, приходится опираться на кодовую страницу подключения. Со всеми вытекающими последствиями.
Кстати, BASE64 нельзя использовать в качестве кодовой страницы подключения.
У Firebird, слава Адриано, с блобами в этом плане — все нормально. Начиная с версии 2.1 сервер предоставляет клиенту сведения о кодовой странице блоба.
Итого — зачем начинать раскладывать новые грабли (поддержка BASE64 — ну просто смехотворная), не устранив старые?
Одно радует — у них хватило ума не выставлять BASE64 как очередной технологический прорыв. В отличии от предыдущих поделок в виде UNICODE_LE и UNICODE_BE.