I'm trying to run this register form and whenever I try to run it I get an error saying that I have a mistake when using the INSERT INTO
command.
Here is the error log: https://i.stack.imgur.com/nuu2B.png
And here is the full code:
protected void Page_Load(object sender, EventArgs e)
{
string username = Request.Form["username"];
string password = Request.Form["password"];
string email = Request.Form["email"];
OleDbConnection dbCon = new OleDbConnection();
OleDbCommand dbCmd = new OleDbCommand();
String Path = Server.MapPath(@"../App_Data/XXX.mdb;");
dbCon.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" + Path;
dbCmd.Connection = dbCon;
OleDbDataAdapter dataA = new OleDbDataAdapter(dbCmd);
dbCmd.CommandText = String.Format("SELECT * FROM Members where username = '{0}';", username);
DataTable dataT = new DataTable();
dataA.Fill(dataT);
if (dataT.Rows.Count == 0)
{
//dbCmd.CommandText = String.Format("INSERT INTO Members (username, password, email) VALUES ('{0}','{1}','{2}');", username, password, email);
dbCmd.CommandText = String.Format("INSERT INTO Members (username, password, email) VALUES ('" + username + "','" + password + "','" + email + "')");
dbCon.Open();
dbCmd.ExecuteNonQuery();
dbCon.Close();
}
else
{
Response.Write("That username is alredy taken");
Response.Redirect("register.aspx");
}
}
I want it to execute the command properly and add it to the database. As you can see, I tried using 2 methods of entering data into the database
dbCmd.CommandText = String.Format("INSERT INTO Members (username, password, email) VALUES ('{0}','{1}','{2}');", username, password, email);
And
dbCmd.CommandText = String.Format("INSERT INTO Members (username, password, email) VALUES ('" + username + "','" + password + "','" + email + "')");
None of them worked.
Can anyone help me solve this problem?
Thank you :)