Se ha publicado la primera versión estable de Pgfe 2 (PostGres FrontEnd), un controlador avanzado y multifuncional (API cliente) para PostgreSQL, escrito en C++ y que facilita el trabajo con PostgreSQL en proyectos en C++. El código del proyecto se distribuye bajo la licencia Apache 2.0. Se requiere un compilador que soporte el estándar C++17 para la construcción.
Principales características:
- Conexión en modos bloqueantes y no bloqueantes.
- Manejo de sentencias preparadas (prepared statement) con parámetros posicionales y nombrados.
- Manejo avanzado de errores utilizando excepciones y códigos de error SQLSTATE.
- Soporte para la invocación de funciones y procedimientos.
- Soporte para la construcción dinámica de consultas SQL.
- Posibilidad de convertir tipos de datos extensibles en la etapa de transmisión entre el cliente y el servidor (por ejemplo, conversiones entre arrays de PostgreSQL y contenedores STL).
- Soporte para el modo de transmisión de consultas en canalización (pipeline), que permite acelerar significativamente la ejecución de un gran número de pequeñas operaciones de escritura (INSERT/UPDATE/DELETE) al enviar la siguiente consulta sin esperar el resultado de la anterior.
- Soporte para Large Objects para el acceso en streaming a grandes conjuntos de datos.
- Soporte para la operación COPY para copiar datos entre un archivo y la base de datos.
- Posibilidad de separar las consultas SQL del código C++ en el lado del cliente.
- Provisión de un pool de conexiones simple y fiable, adecuado para su uso en aplicaciones multihilo.
Fuente: opennet.ru
