MySQL обновить столбец с Python - PullRequest
1 голос
/ 28 марта 2020

Я пытаюсь обновить три столбца в моей таблице данными, используя Python переменные, но я столкнулся с проблемой, которую, похоже, не понимаю.

Я внес некоторые изменения, но все еще сталкиваются с проблемами, кто-нибудь может увидеть, что я делаю неправильно?

Моя таблица:

Columns   id   code    url       val1    val2    val3
Data      1    A2941   url.com   NULL    NULL    NULL

Мой запрос:

cursor.execute("UPDATE mytable SET val1=%s", (myVar))

Сообщение об ошибке:

mysql.connector.errors.ProgrammingError: 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%s' at line 1

1 Ответ

1 голос
/ 28 марта 2020

execute принимает кортеж в качестве второго аргумента. (myVar) - это просто переменная myVar, заключенная в скобки. Чтобы создать кортеж, содержащий только myVar, необходимо добавить запятую:

cursor.execute("UPDATE mytable SET val1=%s", (myVar,))
# Here --------------------------------------------^
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...