Попытался связать бота в телеграм с базой данных, но возникла проблема с её заполнением. Информация в БД не обновляется, скорее всего это связано с тем, что заполнение происходит с теле функции, поэтому это никак на неё не влияет. Как можно избежать данной проблемы? Ниже прилагаю отрывок кода:
cursor = conn.cursor(buffered=True)
def get_name(message):
add_newuser=("INSERT INTO user (id, nickname) VALUES (%(reg_id)s, %(nickname)s)")
data_newuser={
'reg_id' : message.from_user.id,
'nickname' : message.text,
}
global cursor
cursor.execute(add_newuser, data_newuser)
Благодарю за помощь.
Решение: после выполнения всех запросов по изменению БД вызвать метод commit()
у объекта соединения (не курсора). Если же Вы хотите менять БД сразу после любого запроса, то после создания соединения conn
вызовите conn.autocommit(True)
.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Есть таблица , в нем current_timestamp , ну и данные получаются вот так