本人新手想做一个网页查询功能
一个数据表,我想按不同的字段查询,我用vs2005开发 显示主要是gridview
自己写了一段代码,老是用不好,请问大家怎么写这个分类查询    protected void bind()
    {
        SqlConnection con = DB.createconnection();
        con.Open();
        string dm1 = "";
        if (TextBox1.Text == "")
        {
             dm1 = "select * from js_zlssbk";
        }
        else
        {
            if (DropDownList1.Text == "水表代码")
            {
                dm1 = "select * from js_zlssbk where 代码 =" + TextBox1.Text;
            }
            if (DropDownList1.Text == "水表户名")
            {
                dm1 = "select * from js_zlssbk where 户名 like '%" + TextBox1.Text + "%'";
            }
            if (DropDownList1.Text == "水表位置")
            {
                dm1 = "select * from js_zlssbk where 位置 like '%" + TextBox1.Text + "%'";
            }
        }        SqlDataAdapter sda = new SqlDataAdapter(dm1, con);
        DataSet ds = new DataSet();
        sda.Fill(ds, "js_zlssbk");
        GridView1.DataSource = ds.Tables["js_zlssbk"];
        GridView1.AllowPaging = true;
        GridView1.PageSize = 20;
        GridView1.DataBind();

解决方案 »

  1.   

    把字段用中文好不好?我读大学时,。那些SB老师也是喜欢叫我们用中文表示字段。Y的!!!不行的。看起来都费尽。
      

  2.   

    你拼接下SQL语句来做查询,网上有例子,自己找下
      

  3.   

    if (TextBox1.Text == "") 
            { 
                dm1 = "select * from js_zlssbk where 1=1"; 
            
                if (DropDownList1.Text == "水表代码") 
                { 
                    dm1 =dm1 + " and 代码 =" + TextBox1.Text; 
                } 
                if (DropDownList1.Text == "水表户名") 
                { 
                    dm1 =dm1 + " and 户名 like '%" + TextBox1.Text + "%'"; 
                } 
                if (DropDownList1.Text == "水表位置") 
                { 
                    dm1 =dm1 + " and 位置 like '%" + TextBox1.Text + "%'"; 
                } 
           }
      

  4.   


    protected void bind() 
        { 
            SqlConnection con = DB.createconnection(); 
            con.Open(); 
            string dm1 = ""; 
            if (TextBox1.Text == "") 
            { 
                dm1 = " select * from js_zlssbk where 1=1 "; 
            } 
            else 
            { 
                if (DropDownList1.Text == "水表代码") 
                { 
                    dm1 += " and 代码 =" + TextBox1.Text; 
                } 
                if (DropDownList1.Text == "水表户名") 
                { 
                    dm1+ = " and 户名 like '%" + TextBox1.Text + "%' "; 
                } 
                if (DropDownList1.Text == "水表位置") 
                { 
                    dm1 += " and 位置 like '%" + TextBox1.Text + "%'"; 
                } 
            } 
     SqlDataAdapter sda = new SqlDataAdapter(dm1, con); 
            DataSet ds = new DataSet(); 
            sda.Fill(ds, "js_zlssbk"); 
            GridView1.DataSource = ds.Tables["js_zlssbk"]; 
            GridView1.AllowPaging = true; 
            GridView1.PageSize = 20; 
            GridView1.DataBind();
      

  5.   

    纠正一下:里面的三个IF把后面的两个改成ELSE IF,这样节约资源.