Опубликован первый стабильный выпуск Pgfe 2 (PostGres FrontEnd), продвинутого и многофункционального драйвера (клиентский API) для PostgreSQL, написанного на языке C++ и упрощающего работу с PostgreSQL в проектах на C++. Код проекта распространяется под лицензией Apache 2.0. Для сборки требуется компилятор с поддержкой стандарта C++17.
Основные возможности:
- Соединение в блокирующем и неблокирующем режимах.
- Обработка заранее подготовленных выражений (prepared statement) с позиционными и именованными параметрами.
- Расширенная обработка ошибок с использованием исключений и кодов ошибок SQLSTATE.
- Поддержка вызова функций и процедур.
- Поддержка динамического построения SQL-запросов.
- Возможность преобразование расширяемых типов данных на этапе передачи между клиентом и сервером (например, преобразования между массивами PostgreSQL и контейнерами STL).
- Поддержка режима конвейерной передачи запросов (pipeline), позволяющего значительно ускорить выполнение большого числа мелких операций записи (INSERT/UPDATE/DELETE) за счёт отправки следующего запроса не дожидаясь результата предыдущего.
- Поддержка Large Objects для потокового доступа к крупным наборам данных.
- Поддержка операции COPY для копирования данных между файлом с СУБД.
- Возможность отделения SQL-запросов от кода C++ на стороне клиента.
- Предоставление простого и надёжного пула соединений, пригодного для использования в многопоточных приложениях.
Release.
Ссылка here.