把while改为if看看第一次是不是成功的
if (dr1.Read())
{
string sexvalue=dr1[0].ToString();
string year1value=dr1[1].ToString();
string year2value=dr1[2].ToString();
string countyvalue=dr1[3].ToString();
//想在这里放上
接着看看其它原因
if (dr1.Read())
{
string sexvalue=dr1[0].ToString();
string year1value=dr1[1].ToString();
string year2value=dr1[2].ToString();
string countyvalue=dr1[3].ToString();
//想在这里放上
接着看看其它原因
2跟踪出sqlvalue1,在后台运行看是否有值。
就是因为这样所以我觉得很奇怪,但是自己又看不出错在哪里,在这个地方卡了好几天了,郁闷。
It can't Read any data.
You change it to :SqlConnection conn1 = new SqlConnection((String) ConfigurationSettings.AppSettings["gaowei"]);
conn1.Open();
SqlDataAdapter adp1=new SqlDataAdapter("select * from querypa",conn1);
DataSet ds1=new DataSet();
adp1.Fill(ds1);
string sexvalue=ds1.Table[0].rows[0][0].ToString();
..............
写成如下:
SqlCommand cmd1=new SqlCommand("select * from querypara",conn1);
cmd1.ExecuteNonQuery();
SqlDataReader dr1=cmd1.ExecuteReader();
即可 :)
cmd1.ExecuteNonQuery()有什么用,跟cmd1.ExecuteReader();
有什么关系?
刚才我去馒头苦干苦干了一会,发现读取数据以后用来判断的三个if中,第三个if
if (countyvalue != "")
{
sql1=sql1+ " and zz like '%" + countyvalue + "%' ";
}
不起作用。就是因为它不起作用导致整个功能失效。可是这个if在原来利用TextBox输入
查询条件的时候是正常的。我对它没做过任何改动。奇怪了我这个语句的功能是:比如查询条件是“人民”,那么类似“中华人民共和国”之类的记录
都符合条件,都应该被查询出来
if (countyvalue != "")
{
sql1=sql1+ " and zz like '%" + countyvalue + "%' ";
}