Добрый вечер. Столкнулся с проблемой.
Не могу обновить несколько значений в таблице в одной строке. Использую mysql.connector
Пример, когда меняю 1 значение и все ок.
Итак я делаю import файла с функцией обновления
далее обращающь к ней
update_liga.update_liga(idm, liga)
Сам файл update_liga
from mysql.connector import MySQLConnection, Error
from python_mysql_dbconfig import read_db_config
def update_liga(liga, chatid):
# read database configuration
db_config = read_db_config()
# prepare query and data
query = """ UPDATE users_settings
SET liga = %s
WHERE id = %s """
data = (chatid, liga)
try:
conn = MySQLConnection(**db_config)
# update liga
cursor = conn.cursor()
cursor.execute(query, data)
# accept the changes
conn.commit()
except Error as error:
print(error)
finally:
cursor.close()
conn.close()
if __name__ == '__main__':
update_liga(idm, liga)
Теперь я хочу 2 значения обновить и не получается.
добавляю 3ю переменную
update_liga.update_liga(idm, liga, last_update)
и корректирую сам файл
from mysql.connector import MySQLConnection, Error
from python_mysql_dbconfig import read_db_config
def update_liga(liga, last_update, chatid):
# read database configuration
db_config = read_db_config()
# prepare query and data
query = """ UPDATE users_settings
SET liga = %s, last_update = %s
WHERE id = %s """
data = (chatid, liga, last_update)
try:
conn = MySQLConnection(**db_config)
# update liga
cursor = conn.cursor()
cursor.execute(query, data)
# accept the changes
conn.commit()
except Error as error:
print(error)
finally:
cursor.close()
conn.close()
if __name__ == '__main__':
update_liga(idm, liga, last_update)
Подскажите, что я делаю не так?