Ошибка соединения FireBird и DBeaver. function POS is not defined
Я пытаюсь уже 3 день в DBeaver присоединить FireBird(Все скрины ниже). Я перепробовал всё что можно:скачивал разные драйвера FireBird, разные версии DBeaver, разные версии самого FireBirdа (от 2.5 до 5.0), скачивал отдельно jdbc пакеты. Всё бестолку. При чём важный нюанс: на ноуте у меня всё заработало, а на компе по тем же самым параметрам не запускается. P.S.UDFAccess как раз и нужно чтобы ошибка POS не возникала. Сразу скажу что без пользовательских свойств у меня даже на ноутбуке не запускалось(поэтому я думаю дело не в них). С разрядностью системы тоже не ошибся.
Ответы (2 шт):
В твоей базе явно существует триггер ON CONNECT, использующий функцию POS.
Есть три способа решить эту проблему:
- Обеспечить наличие и доступность функции POS.
- Отключить или удалить триггер.
- Использовать при подключении флаг isc_dpb_no_db_triggers (работает только для владельца и SYSDBA).
Короче, я решил свою проблему. Дело было в драйвере и в том,что в свойствах забыл указать isc_dpb_no_db_triggers(дважды!!! в свойствах драйвера и в настройках драйвера), а все прочие ошибки по типу: строка true, функция POS это лишь следствие не работающего драйвера и свойства. Я установил FireBird 2.5.9 DBeaver последней версии(24.0.0), все свойства драйверов оставил не меняя: UDFAccess,encoding,isc_dpb_no_db_triggers. САМОЕ ГЛАВНОЕ (смотри скрин) поменял драйвер на 4.0.0.java8 и установил свойство isc_dpb_no_db_triggers true. Всё заработало. В этом драйвере есть файл antlr4-runtime-4.7.2.jar, который и обрабатывает SQL запросы. В других драйверах я его не заметил и именно из-за него мой Firebird не коннектился. В общем, всем спасибо кто принимал участие!