Cliente PostgreSQL no bloqueante para Node.js, con un driver en JavaScript puro y bindings nativos opcionales para libpq.
jackc/pgx
Driver y conjunto de herramientas íntegramente en Go para PostgreSQL, con funciones específicas como LISTEN/NOTIFY y COPY.
- Estrellas
- 14,384
- Forks
- 1,159
- Issues abiertos
- 218
- Último commit
- anteayer
¿Qué es?
pgx es un driver y conjunto de herramientas para PostgreSQL implementado íntegramente en Go. Su interfaz de driver es de bajo nivel y está orientada al rendimiento; además, expone funciones específicas de PostgreSQL, como LISTEN / NOTIFY y COPY. También incluye un adaptador para la interfaz estándar database/sql, pensado para el código que ya depende de ella.
El conjunto de herramientas está formado por paquetes que implementan funciones de PostgreSQL, como el análisis del protocolo de red y la correspondencia de tipos entre PostgreSQL y Go. Se pueden reutilizar para crear drivers alternativos, proxies, balanceadores de carga o clientes de replicación lógica. También incluye un pool de conexiones (pgxpool) para uso concurrente.
El proyecto admite alrededor de 70 tipos de PostgreSQL, caché de sentencias preparadas, consultas por lotes, codificación en formato binario para tipos personalizados y hooks de tracing y logging. Es compatible con Go 1.25 y versiones posteriores, y con PostgreSQL 14 y versiones posteriores.
Funciones clave
- 01Admite alrededor de 70 tipos de PostgreSQL y su correspondencia con tipos de Go
- 02Caché automática de sentencias preparadas y consultas por lotes
- 03Compatibilidad con el protocolo COPY para la carga masiva de datos
- 04Compatibilidad con LISTEN / NOTIFY y objetos grandes
- 05Pool de conexiones con un hook posterior a la conexión
- 06Hooks de tracing y logging, además de un adaptador para database/sql
Casos de uso
- Crear servicios en Go que se conecten directamente a PostgreSQL y necesiten sus funciones específicas
- Cargar grandes conjuntos de datos mediante el protocolo COPY
- Crear un proxy de PostgreSQL, un pooler de conexiones o un cliente de replicación lógica
- Usar pgx en una base de código existente que dependa de database/sql
Inicio rápido
- 1
Instala el módulo pgx v5 con Go
go get github.com/jackc/pgx/v5 - 2
Escribe un programa que se conecte con pgx.Connect usando una variable de entorno DATABASE_URL y ejecute una consulta
Antes de usarlo
- Necesitas un servidor PostgreSQL al que conectarte (se admiten las versiones 14 y posteriores).
- Se requiere Go 1.25 o posterior.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es pgx?
- Driver y conjunto de herramientas íntegramente en Go para PostgreSQL, con funciones específicas como LISTEN/NOTIFY y COPY. pgx es un driver y conjunto de herramientas para PostgreSQL implementado íntegramente en Go. Su interfaz de driver es de bajo nivel y está orientada al rendimiento; además, expone funciones específicas de PostgreSQL, como LISTEN / NOTIFY y COPY. También incluye un adaptador para la interfaz estándar database/sql, pensado para el código que ya depende de ella.
- ¿pgx es gratuito? ¿Qué licencia tiene?
- pgx es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿pgx sigue mantenido?
- Mantenimiento activo. El último commit de pgx fue el 5 nov 2026.
- ¿Para qué puedo usar pgx?
- Crear servicios en Go que se conecten directamente a PostgreSQL y necesiten sus funciones específicas Cargar grandes conjuntos de datos mediante el protocolo COPY Crear un proxy de PostgreSQL, un pooler de conexiones o un cliente de replicación lógica Usar pgx en una base de código existente que dependa de database/sql
- ¿Cómo se instala pgx?
- Instala el módulo pgx v5 con Go: go get github.com/jackc/pgx/v5 Escribe un programa que se conecte con pgx.Connect usando una variable de entorno DATABASE_URL y ejecute una consulta
- ¿Dónde consigo pgx?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/jackc/pgx
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
El controlador JDBC Type 4 oficial que permite a los programas Java conectarse a bases de datos PostgreSQL y consultarlas.
Kit de herramientas SQL asíncrono y escrito en Rust puro, con consultas SQL normales verificadas en tiempo de compilación y soporte para PostgreSQL, MySQL/MariaDB y SQLite.
Herramienta de migraciones de bases de datos escrita en Go, con CLI y biblioteca para aplicar cambios de esquema ordenados en numerosas bases de datos.
CLI y biblioteca de Go para gestionar cambios en el esquema de bases de datos mediante archivos SQL versionados o funciones de Go.
Cliente SQL de escritorio gratuito y multiplataforma, y herramienta para bases de datos compatible con más de 100 bases mediante drivers JDBC y ODBC.