选中checkedListBox中的一个或多个项,每个项本身就是表的字段名,然后动态生成查询语句!!谢谢。

解决方案 »

  1.   

      private   void   checkedListBox1_ItemCheck(object   sender,   ItemCheckEventArgs   e)
      {
          int   idx   =   e.Index;//idx就是当前的选中项序号 
     
          if(CheckedListBox.Items[idx].CheckState = CheckState.Checked)
          {
             string  strset = “select  ID  from student where name =‘zhansan’”;
          }
      }
      大概是这样的意思,我这里没有环境,自己调一下希望对你有帮助.
      

  2.   

    你是指的这种意思吗 “select ‘”+CheckedListBox对应的变量1+“’ from where  ‘”+CheckedListBox对应的变量2+“’=”+ 变量值; 
      

  3.   

     using (StreamWriter sw = new StreamWriter(this.saveFileDialog1.FileName.ToString()))
                            {
                                 for (int s=0; s < this.checkedListBox2.CheckedItems.Count; s++)
                                {                        
                                    SqlCommand cmd = new SqlCommand("exec getdata @tablename=" + this.checkedListBox2.CheckedItems[s] + "", conn);
                                    conn.Open();
                                    cmd.ExecuteNonQuery();
                                    SqlDataReader sdr = cmd.ExecuteReader();                                      
                                        while (sdr.Read())
                                        {
                                            string strsql = "";
                                            for (int i = 0; i < sdr.FieldCount; i++)
                                            {
                                                strsql += sdr[i].ToString();
                                            }
                                            sw.WriteLine(strsql);                           
                                        }
                                        conn.Close(); 
    }                      
    上面是获取SQL脚本的,你可以参考下!这个CheckedListBox里面我是所有的表名,通过循环来获取所有的项来执行相应的存储过程!
                                       
      

  4.   

    特意写了一下,你可以直接使用private void button1_Click(object sender, EventArgs e)
            {
                string sql = "";
                if (checkedListBox1.CheckedItems.Count==0)
                {
                    //一个也没有选择,退出
                    return;
                }
                for (int i = 0; i < checkedListBox1.CheckedItems.Count; i++)
                {
                    sql += checkedListBox1.CheckedItems[i].ToString() + ",";
                }
                //去掉最后面的“,”
                sql = sql.Substring(0, sql.Length - 1);
                //可以把表名称放到checkedListBox1的Tag中,这样就更灵活一些
                sql = "SELECT " + sql + " FROM " + checkedListBox1.Tag.ToString();
                Console.WriteLine(sql);
            }