首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

while(reader.Read())表里数据为空 还是进了循环解决办法

2012-04-28 
while(reader.Read())表里数据为空 还是进了循环把所有数据都删除后,再查询时,还是进了循环报错了查询:str

while(reader.Read())表里数据为空 还是进了循环
把所有数据都删除后,再查询时 ,还是进了循环 报错了

查询:
string sqlstr = "select bs,wtdh,yqmc from [T_Sys_JDJLB]";
  SqlCeDataReader read = null;
  //创建SQL数据集
  sqlcmd = new SqlCeCommand(sqlstr, DataBaseCon.acon);
  read = sqlcmd.ExecuteReader();

  //列表清空
  listView1.Items.Clear();
  //读取数据集信息
  while (read.Read())
  {
  metrology_jdjl.Add(read[0].ToString(), read[0].ToString());

  //创建子数组 subitem
  ListViewItem tmpSubitem = new ListViewItem();
  tmpSubitem.SubItems.Clear();

  //委托单号
  tmpSubitem.SubItems[0].Text = read[1].ToString();
  //仪器名称
  tmpSubitem.SubItems.Add(read[2].ToString());

  listView1.Items.Add(tmpSubitem);
  }
  //释放资源
  read.Close(); read = null; sqlcmd = null;



删除:

  SqlCeCommand sqlcmd = null;
  try
  {
  string sqlstr = "delete from [T_Sys_JDJLB] where bs in (" + bs + ")"; ;
  sqlcmd = new SqlCeCommand(sqlstr, DataBaseCon.acon);
  sqlcmd.ExecuteNonQuery();

  }catch(Exception ee)
  {
  ret = false;
  }
  //释放资源
  sqlcmd = null;


[解决办法]
如果没有数据肯定不会循环的,肯定是哪边错误,仔细调试下
[解决办法]
单步调试一下,用datatable和dataadapter看看能不能取出数据来
[解决办法]
不是的你的
while里面是有装换出错

另外就是string sqlstr = "select bs,wtdh,yqmc from [T_Sys_JDJLB]";的后面没有条件的

你的删除是有条件的

比如:你吧>0的删除了
然后查询的是全部数据
当然还有数据了哦

string sqlstr = "select bs,wtdh,yqmc from [T_Sys_JDJLB]"; 加上条件
然后while里面有bug

热点排行