Не удаётся сохранить данные в БД
Подскажите, пожалуйста, что может быть не так, как лучше перестроить функцию ниже: при вызове функции данные в БД не добавляются, ошибка не возникает.
def db_table_val(user_id: int, user_name: str, user_surname: str, username: str, user_first_name: str):
conn = sqlite3.connect('test.db', check_same_thread=False)
cursor = conn.cursor()
cursor = cursor.execute('SELECT * FROM test WHERE (user_id IS ? )', (user_id, ))
row = cursor.fetchone()
if row is None:
cursor.execute('INSERT INTO test (user_id, user_name, user_surname, username, user_first_name) VALUES (?, ?, ?, ?, ?)', (user_id, user_name, user_surname, username, user_first_name));
return 'Ваши данные сохранены.'
if row is not None:
return 'Вы уже зарегистрированы.'
conn.commit()
Ответы (1 шт):
Автор решения: Джефф
→ Ссылка
- Какой результат Select?
- Строку
return 'Ваши данные сохранены.'должна быть в блоке if. Следовательно... - ... выделенный блок исполняться никогда не будет:

