WolfInChains
@WolfInChains

Как сравнить айди пользователя с айди в базе sqlite?

Вот так читаю, записываю и удаляю айди из базы.
def select_with_fetchall():
    cmd = "SELECT user_id  FROM banlist"
    c.execute(cmd)
    result = c.fetchall()
    print(result)
def insert():
    cmd = "INSERT INTO banlist(user_id) VALUES (%d)" % (event.obj.reply_message['from_id'])
    c.execute(cmd)
    conn.commit()
    print("Пользователь добавлен в черный список")
def delete():
    cmd = "DELETE FROM banlist WHERE user_id=%d" % event.obj.reply_message['from_id']
    c.execute(cmd)
    conn.commit()
    print("Пользователь удален из черного списка")

Вот так записываю и удаляю командами бота
if event.object.text == "Бан" or event.object.text == "бан":
    if event.obj.from_id in get_admins(event.obj.peer_id):
        insert()
        kick_user_fwd()
if event.object.text == "Анбан" or event.object.text == "анбан":
    if event.obj.from_id in get_admins(event.obj.peer_id):
        delete()
        send_msg(event.obj.peer_id, "Пользователь разбанен")


Но вот никак не могу понять как сравнить айди пользователя с айди в базе данных.
  • Вопрос задан
  • 104 просмотра
Решения вопроса 1
ayazer
@ayazer
Sr. Software Engineer
ну как пример:

def is_user_banned(user_id: int) -> bool:
    cmd = "select count(user_id) from banlist where user_id = %d" % (user_id)
    c.execute(cmd)
    result = c.fetchone()[0]
    return result > 0
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы