手机宝邀请码是多少(铁路校友)博客

一个混迹互联网十余年的老站长-Good Luck To You!

MySql.Data.MySqlClient.MySqlException'发生在MySql.Data.dll中

本文介绍了MySql.Data.MySqlClient.MySqlException'发生在MySql.Data.dll中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试从c#应用程序查询MySQL数据库.下面是代码,在这里我正在使用parameterized query 

 public static void ValidateName(MySqlConnection conn,List<Employee> EmpList, string Group)
 {   string selectQuery = "Select Name from Employee where Group = @Group  AND @Name in (FirstName, LastName);";
   using (MySqlCommand cmd = new MySqlCommand(selectQuery, conn))
    {     for (int i = 0; i < EmpList.Count; i++)
      {
        cmd.Parameters.Add("@Group", MySqlDbType.VarChar).Value = Group;
        cmd.Parameters.Add("@Name", MySqlDbType.VarChar).Value = EmpList[i].Name;
        var reader = cmd.ExecuteReader();
        List<string> lineList = new List<string>();        while (reader.Read())
        {
            lineList.Add(reader.GetString(0));
        }        if (lineList.Count <=0)
        {           WriteValidationFailure(EmpList[i], "Failed");
        }
}       
}

但是上面的代码在下面一行说

 cmd.Parameters.Add("@Group", MySqlDbType.VarChar).Value = Group;


类型为'MySql.Data.MySqlClient.MySqlException'的未处理异常 MySql.Data.dll'@Group中已经发生了


推荐答案

之所以发生这种情况,是因为您在每次迭代中都添加了相同的参数集.您可以在每次迭代中清除然后在启动循环之前添加它们,并在每次迭代期间更改现有参数的值.我认为第二种选择会很棒.我还要在此处指定关于阅读器的另一件事,您必须将阅读器用作using变量,以便每次将其放置在using块的末尾时,您的代码就可以正常工作.这意味着您可以尝试这样的事情:

using (MySqlCommand cmd = new MySqlCommand(selectQuery, conn))
{
    cmd.Parameters.Add(new MySqlParameter("@Group", MySqlDbType.VarChar));
    cmd.Parameters.Add(new MySqlParameter("@Name", MySqlDbType.VarChar));    for (int i = 0; i < EmpList.Count; i++)
    {
        cmd.Parameters["Group"].Value = group;
        cmd.Parameters["Name"].Value = EmpList[i].Name;
        // rest of code here       using (MySqlDataReader reader = cmd.ExecuteReader())
       {
           // Process reader operations 
       }

    }
}


发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年7月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
网站收藏
友情链接

Powered By Z-BlogPHP 1.7.3

关于我们:本人从2011年开始网络创业, 自学 建站,7年手机副业经验。网站内容:本站是本人记录生活感悟,读书学习的网站,希望能对大家有所帮助。网名:光影 职业:SEO营销顾问籍贯:四川广安,定居成都 电话:个V:wx374241337 邮箱:374241337@qq.com 【腾讯云】轻量新用户上云福利,2核2G4M 低至 65元/年 , 超大容量云硬盘 0.5折起! https://cloud.tencent.com/act/cps/redirect?redirect=1079&cps_key=50f8a4cb23c2e06ea4eb495d47786825&from=console