FB3, DatabaseParameterBuffer
Привет всем.
Меня тут мысль одна посетила (и ей одиноко …).
В тройке (а может и раньше, не разбирался) появилась новая версия формата буфера с параметрами подключения к базе данных — v2. В отличии от v1, в v2 можно передавать параметры с длиной вплоть до 65535 байт. В v1 длина ограничивалась 255 байтами.
Если мы подключаемся к серверу через fbclient.dll, то при выборе формата DPB мы можем опираться на версию серверного клиента.
Однако что-то я не узрел в новой fbclient.dll кода преобразования v2->v1 для случая подключения к Firebird с версией младше третьей.
Наверное плохо искал.
Но если его там действительно нет, то вторая версия DPB идет лесом. И, при работе с сервером через fbclient.dll, надо продолжать сидеть на DPB v1.
——
При подключении к серверу минуя fbclient.dll, DPB можно сформировать после определения версии протокола. Что, собственно говоря, и делается в IBProvider. И FB3 (13-ый протокол) действительно может принимать DPB v2.