SqlConnection My_con = new SqlConnection(Properties.Settings.Default.高压绝缘数据库ConnectionString);
                My_con.Open();
                //SqlCommand SQLcom = new SqlCommand("delete from 登录表 where 用户名  = '" + this.comboBox1.Text + "'", My_con);
                SqlCommand SQLcom = new SqlCommand("delete from [信息表] a, [试验表] b  where  a.设备编号   = @date and b.设备编号 = @date", My_con);
                SQLcom.Parameters.AddWithValue("@date", comboBox1.Text);
                SQLcom.ExecuteNonQuery();
                SQLcom.Dispose();
                My_con.Close();
                MessageBox.Show("删除成功!");
在SQLcom.ExecuteNonQuery();
报错如标题所示
请问如何解决,谢谢

解决方案 »

  1.   

    delete from [信息表] a, [试验表] b  where  a.设备编号   = @date and b.设备编号 = @dateSQL语句写错了
    你是想删哪个表的数据?不能一下删两个表的
    删信息表
    delete from [信息表]  where  设备编号 = @date
    删试验表
    delete from [试验表]  where  设备编号 = @date
      

  2.   

    不能同时删除2个表中的数据,删除2个表的话,一个一个的删除。SqlCommand SQLcom = new SqlCommand("delete from [信息表] a where  a.设备编号   = @date", My_con);SqlCommand SQLcom2 = new SqlCommand("delete from  [试验表] b  where  b.设备编号 = @date", My_con);如果这2个表有关联的话,当初在建表的时候,就应该设置级联修改和删除,或是对于主表添加一个触发器,当表中删除一条记录的时候,在字表中同时删除和该主表ID相同的记录。
      

  3.   

    重新整理了下
    SqlConnection My_con = new SqlConnection(Properties.Settings.Default.高压绝缘数据库ConnectionString);
    My_con.Open();
    SqlCommand SQLcom = new SqlCommand();
    SQLcom.Connection = My_con;
    SQLcom.CommandText= "delete from [信息表] a  where  a.设备编号 = @date";
    SQLcom.Parameters.AddWithValue("@date", comboBox1.Text);
    SQLcom.ExecuteNonQuery();
    SQLcom.CommandText= "delete from [试验表] b  where  b.设备编号 = @date";
    SQLcom.ExecuteNonQuery();
    SQLcom.Dispose();
    My_con.Close();
    MessageBox.Show("删除成功!");
      

  4.   

    断点调试把你的语句复制出来看看,可否在SQL中执行。
      

  5.   

    "delete from [信息表] a, [试验表] b  where  a.设备编号   = @date and b.设备编号 = @date"
    sql语句好像不能这样写,你一个表一个表删除看看.....