【发布时间】:2016-03-02 00:33:29
【问题描述】:
My Class CRUD 有以下方法:
public bool dbQuery(string sql,string[] paramList= null)
{
bool flag = false;
try
{
connect();
cmd = new MySqlCommand(sql,con);
cmd.Prepare();
if(paramList != null)
{
foreach(string i in paramList){
string[] valus = i.Split(',');
string p = valus[0];
string v = valus[1];
cmd.Parameters.AddWithValue(p,v);
}
}
if (cmd.ExecuteNonQuery() > 0)
{
flag = true;
}
}
catch (Exception exc)
{
this.error(exc);
}
finally
{
try
{
closeCon();
}
catch (Exception excf)
{
this.error(excf);
}
}
return flag;
}
我通过以下方式发送查询:
string sql = "SELECT * FROM dept_login WHERE (user_email = ?user_email OR user_cell = ?user_cell ) AND userkey = ?userkey";
string[] param = new string[] {
"\"?user_email\",\""+ userid.Text.ToString()+"\"" ,
"\"?user_cell\",\""+ userid.Text.ToString()+"\"" ,
"\"?userkey\",\""+ userkey.Text.ToString()+"\""
};
if (db.dbQuery(sql, param))
{
msg.Text = "Ok";
}
else
{
msg.Text = "<strong class='text-danger'>Authentication Failed</strong>";
}
但它说的是
Parameter "?user_email" must be defined"
我做错了什么?有没有最好的方法将它与参数一起使用来搜索、插入、更新和或删除 MySQL 数据库中的记录。我在具有 64 位、MySQL Server 5.6.21 的 Windows 10 上使用带有 Dot Net Framework 4.5 的 Visual Studio 2015。
【问题讨论】:
标签: c# mysql asp.net visual-studio