@motya88

Как обновить несколько значений в БД через python?

Добрый вечер. Столкнулся с проблемой.
Не могу обновить несколько значений в таблице в одной строке. Использую 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)


Подскажите, что я делаю не так?
  • Вопрос задан
  • 393 просмотра
Решения вопроса 1
@deliro
Путаешь местами переменные
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы