Flask: near "": syntax error
Подскажите, пожалуйста.
Пробую во FLask сделать авторизацию и регистрацию. Регистрация получилась и пользователи добавляются.
Теперь пробую сделать авторизацию. Ну и проверяю, есть ли такой емейл в базе. Пока что для теста в качестве БД использую sqlite3.
Для этого использую код:
def get_user_by_email(self, email):
try:
self.__cur.execute(f"SELECT * FROM users WHERE email = {email} LIMIT 1")
res = self.__cur.fetchone()
if not res:
print('Пользователь не найден')
return False
return res
except sqlite3.Error as e:
print(f'Ошибка получения email: {email} из БД: ' + str(e))
return False
При попытке запустить код получаю ошибку:
Ошибка получения email: [email protected] из БД: near "@2": syntax error
Не могу разобраться что сделал не так
Ответы (1 шт):
Автор решения: Inventor
→ Ссылка
Вы должны указать, что email это строка, иначе БД думает, что это переменная. Для этого используются кавычки, т.е.:
НЕ {email}, а '{email}'
Так БД поймёт, что это строка и сохранять её нужно как строку, а не искать в ней переменные