我想用用户提供的新用户名和密码更新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
表中,但是没有用新的用户名和密码更新表。我不知道我在做什么错,所以如果有人可以纠正我并改善代码,那就太好了。预先感谢。
答案 0 :(得分:0)
您需要阅读有关c#和sql基础的更多信息
这里使用的技能请阅读:
sql - Drop existing table in SQLite, when IF EXISTS operator is not supported - Stack Overflow
SqlCommand.ExecuteScalar Method (System.Data.SqlClient) | Microsoft Docs
=