Escriu per cercar…

asyncpg

asyncpg es una librería de interfaz de base de datos diseñada específicamente para PostgreSQL y asyncio.

S'ensenya a
ProgramacióBases de dadesDAW-BIO

Introducción

asyncpg es una implementación eficiente del protocolo binario de PostgreSQL para el asyncio de Python. Proporciona consultas rápidas, funciones nativas del protocolo y primitivas convenientes para E/S asíncrona.

Configuración

ps
uv init asyncpg-basic
cd asyncpg-basic
uv add asyncpg

Crea e inicia una instancia de PostgreSQL como se explica en Basic.

Luego crea una base de datos llamada test:

shell
create database test;

Uso básico

Crea test_database.py:

python
import asyncio
import asyncpg
import datetime


async def main():

    # Establish a connection to an existing database named "test"
    conn = await asyncpg.connect("postgresql://postgres:password@localhost/test")

    try:
        # Execute a statement to create a new table.
        await conn.execute(
            """
          create table if not exists users(
            id serial primary key,
            name text unique,
            dob date
        )"""
        )

        # Insert a record into the created table.
        await conn.execute(
            """
            insert into users(name, dob) values($1, $2) on conflict(name) do nothing""",
            "Alice",
            datetime.date(1980, 25, 1),
        )

        # Select a row from the table.
        row = await conn.fetchrow("select * from users where name = $1", "Alice")
        # *row* now contains <Record id=1 name='Alice' dob=datetime.date(1980, 25, 1)>
        print(row)

    finally:
        # Close the connection.
        await conn.close()


asyncio.run(main())

Ejecuta el script y deberías ver:

shell
<Record id=1 name='Alice' dob=datetime.date(1980, 1, 25)>

Estàs llegint una vista prèvia.

Inicia la sessió amb Google per llegir la pàgina sencera.

Inicia la sessió amb Google

Només et demanarem que acceptis les condicions del servei.