Как решить проблему с запросом в postgresql

Простая функция для работы с базой данных

async def pg(sql):
    conn = await asyncpg.connect(user=user, password=password, host=host, port=port, database=database)
    await conn.execute(sql)
    if 'SELECT' in sql:
        await conn.fetch(sql)
    await conn.close()

Вызываю функцию

for balance, id in await pg(f'SELECT balance, id FROM client WHERE chat_id = {chat_id};'):pass

Приходит ошибка

for balance, id in await pg(f'SELECT balance, id FROM client WHERE chat_id = {chat_id};'):
TypeError: 'NoneType' object is not iterable

Причина понятна, запрос не проходит. Но он должен пройти потому что при команде /start мой chat_id автоматически добавляется в базу данных. Я думаю что причина в типах данных, chat_id использует INTEGER, но на какой тип данных можно изменить что бы все было нормально


Ответы (1 шт):

Автор решения: v1nc3nt_0'ne1ll

Решение было простым:

async def pg(sql):
    conn = await asyncpg.connect(user=user, password=password, host=host, port=port, database=database)
    await conn.execute(sql)
    if 'SELECT' in sql:
        await conn.fetch(sql)# здесь нужно использовать return
    await conn.close()
→ Ссылка