У меня есть базовая программа, которая должна запрашивать базу данных, содержащую информацию о пользователях. Я пытаюсь выбрать информацию для конкретного пользователя и распечатать ее на консоли.
Вот мой код:
import mysql.connector
funcon = mysql.connector.connect(user='root', password='pass', host='127.0.0.1', database='fundata')
funcursor = funcon.cursor()
query = ("SELECT * FROM funtable WHERE userName=%s")
uName = 'user1'
funcursor.execute(query, uName)
for (userName) in funcursor:
print("{}".format(userName))
У меня есть имя пользователя, хранящееся в переменной, потому что позже я планирую получить имя пользователя из поля ввода tkinter. Когда я выполняю этот код, я получаю следующую ошибку:
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
Я попытался поместить% s в кавычки в запросе, но затем он буквально ищет имена пользователей "% s" и ничего не возвращает. Как я могу изменить свой код, чтобы я мог запрашивать базу данных только для этого пользователя?
Спасибо.
К вашему сведению: я использую Python 3.3.