Driver for PostgreSQL written fully in Rust and exposed to Python. Main goals of the library is speed and type safety.
You can find full documentation here - PSQLPy documentation
You can install package with pip
or poetry
.
poetry:
> poetry add psqlpy
pip:
> pip install psqlpy
Or you can build it by yourself. To do it, install stable rust and maturin.
> maturin develop --release
Usage is as easy as possible. Create new instance of ConnectionPool and start querying. You don't need to startup connection pool, the connection pool will create connections as needed.
from typing import Any
from psqlpy import ConnectionPool, QueryResult
async def main() -> None:
db_pool = ConnectionPool(
username="postgres",
password="pg_password",
host="localhost",
port=5432,
db_name="postgres",
max_db_pool_size=2,
)
res: QueryResult = await db_pool.execute(
"SELECT * FROM users",
)
print(res.result())
db_pool.close()
You can find benchmarks with visualization on our docs