How to use OdbcParameter for MySQL?
This is my current attempt:
command.Parameters.Add(new OdbcParameter("@username", username.Text));
command.Parameters.Add(new OdbcParameter("@password", password.Text));
command.CommandText = "INSERT INTO test.test (`user`,`password`) VALUES (@username,@password);";
command.ExecuteNonQuery();
but it seems to be not working. The database does create a new row, but it's values are NULL.
This works: (but I rea开发者_开发技巧lly need the parameters for other stuff)
command.CommandText = "INSERT INTO test.test (`user`,`password`) VALUES (`" + username.Text + "`,`" + password.Text + "`);";
command.ExecuteNonQuery();
What am I doing wrong?
Change your CommandText
to be a valid one for OdbcCommand:
command.CommandText = "INSERT INTO test.test (`user`,`password`) VALUES (? , ?);";
Instead of the parameter name as @paramname
, it takes a ?
in the CommandText
- leave the name in the actual parameters.
See this blog post for an example.
精彩评论