Я хочу обновить имя пользователя и пароль, хранящиеся в базе данных SQLite, на новые имя пользователя и пароль, предоставленные пользователем, чтобы они могли обновить свои данные пользователя.
Я уже пытался найти решения своей проблемы и нашел похожих пользователей с похожим требованием, но когда я пытаюсь реализовать их решения с помощью своего кода, похоже, что он не работает.
SQLiteConnection con = new SQLiteConnection("Data Source=Users.sqlite;Version=3;");
SQLiteCommand cmd = new SQLiteCommand("select * from UserInfo where username like @username and password = @password;", con);
cmd.Parameters.AddWithValue("@username", oldusername);
cmd.Parameters.AddWithValue("@password", oldpassword);
con.Open();
SQLiteDataReader sdr = cmd.ExecuteReader();
if ((sdr.Read() == true))
{
MessageBox.Show("Username and Password Updated Successfully!",
"Task Completed");
string update ="UPDATE UserInfo SET UserName='" + newusername + "', Password='" + newpassword + "' WHERE (Username='" + oldusername + "' AND Password ='" + oldusername + "');";
con.Close();
}
else
{
MessageBox.Show("Invalid username or password",
"Incorrect details entered");
}
Проблема в том, что мой код проверяет, сохранено ли старое имя пользователя и пароль в таблице UserInfo
, но не обновляет таблицу новыми именами пользователей и паролями. Я не знаю, что я делаю неправильно, поэтому было бы здорово, если бы кто-то мог исправить меня и, возможно, улучшить код. Заранее спасибо.