日期:2014-05-17  浏览次数:20415 次

关于GridView的动态查找。
我打算做一个数据查找,用的是GridView显示,有几个TextBox用来输入查找条件,一个Button来执行。
先是单个数据的模糊查找,下面是我网上找的后台C#代码,经测可行。
         string ssname = sname.Text;
         AccessDataSource1.SelectParameters.Clear();
        AccessDataSource1.SelectCommand = "SELECT * FROM [shop] Where [shopname] like @ssname";
        AccessDataSource1.SelectParameters.Add("@ssnmae", "%" + ssname + "%");
        AccessDataSource1.DataBind();
        sname.Text = "";
然后我想在这个的基础上再加上一个给定范围内的数据的查找,不知道怎么改。
AccessDataSource1.SelectCommand = "SELECT * FROM [shop] Where [shopname] like @ssname and [num]>=lownum and [num]<=highnum";//lownum和highnum是TextBox中读取的参数转化为int型
只改select语句的话报错,提示至少一个参数没有被指定值。

------解决方案--------------------
把 ssname 和 ssnmae 写成一致的。
------解决方案--------------------
一个参数会了,两个就不会了?定义两参数分别赋值
------解决方案--------------------
執行sql語句時,傳送到sql語句裡面的參數的值

AccessDataSource1.SelectCommand = "SELECT * FROM [shop] Where [shopname] like @ssname and [num]>=@lowNum and [num]<=@highnum";

AccessDataSource1.SelectParameters.Add("@ssname",  SqlDbType.NVarChar,10).Value="abcd";
AccessDataSource1.SelectParameters.Add("@lowNum",  SqlDbType.Int).Value=1;
AccessDataSource1.SelectParameters.Add("@highnum",  SqlDbType.Int).Value=100;