• Ошибка sqlite3.IntegrityError: UNIQUE constraint failed: users.user_id, что делать?

    Vindicar
    @Vindicar
    RTFM!
    message.from_user.id in cursor.execute('SELECT user_id FROM users')
    На кой нужно делать выборку всех пользователей, чтобы потом питоном искать в ней данные? Используй ключевое слово WHERE, и используй prepared statement для подстановки значения из переменной, а не форматирование строк.

    f'UPDATE users SET user_id = {message.from_user.id} WHERE user_id = {message.from_user.id}'
    "Если id = 1, то сделай id равным 1". На кой?!
    И да, не используй форматирование строк для формирования строки запроса. Используй prepared statements.

    Например так:
    ids = cursor.execute('SELECT user_id FROM users WHERE user_id = ?', (message.from_user.id,))


    > не понимаю в чем проблема
    В недостатке знаний по основам SQL, и в попытке писать ботов, не разобравшись в основах.
    Ответ написан
    2 комментария