@srgvac
Разработчик любитель

Почему не сохраняет бд?

Проблема в том,что в одной части кода вывод 1(пример ниже),а в другой 0,то есть не обновляется почему-то бд
con = sqlite3.connect("orders.db")
        cur = con.cursor()
        cur.execute(f"SELECT users FROM st;")
        users = cur.fetchone()[0]
        print(users)
        us = users+1
        print(us) #тут вывод 0
        cur.execute(f"UPDATE st SET users = {us};")
        conn.commit()
        cur.execute(f"select users from st")
        users1 = cur.fetchone()[0]
        print(users1) #тут вывод 1
  • Вопрос задан
  • 156 просмотров
Решения вопроса 1
@srgvac Автор вопроса
Разработчик любитель
Могу сказать одно
просто не сохранялось
con = sqlite3.connect("orders.db")#тут con
 cur = con.cursor()#тут тоже con
conn.commit()#а тут conn
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Dr_Elvis
@Dr_Elvis
Предполагаю что вот тут
cur.execute(f"UPDATE st SET users = {us};")
Вы в users вставляете число, а в базе стоит тип строка. Коммит не срабатывает и выводится то, что было.
Проверьте типы в базе и те, что вносите.
Ответ написан
Ваш ответ на вопрос

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

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