如何逐条检查Table中的各条记录?
可有原程序???
 PVTsdata.table1.First;
 m:=PVTsdata.table1.RecordCount;
 for num:=0 to m-1 do
   begin
   if  PVTsdata.table1.FieldValues['EXPNO']=edit1.text
      then  
          begin mssagedlg('该实验名称已经存在!',mtwarning,[mbYes,mbNO],0);
         i:=false;
           break;
             end 
            else PVTsdata.table1.Next;
我是这样写的,但是不行,请教各位大虾!!!

解决方案 »

  1.   

    PVTsdata.First;
    while not PVTsdata.Eof do
    begin
      //你的处理代码  //切换到下一条记录
      PVTsdata.Next;
    end;
      

  2.   

    对这样要检数据集最好用While
    with DataSet do
    begin
      First;
      while not Eof do
      begin
         (在此放入检查)
         Next;
      end;
    end;
      

  3.   

    if  trim(PVTsdata.table1.FieldByName('EXPNO').asstring)=trim(edit1.text) then  
    begin
      begin mssagedlg('该实验名称已经存在!',mtwarning,[mbYes,mbNO],0);
      i:=false;
      break;
    end 
    else PVTsdata.table1.Next;
      

  4.   

    PVTsdata.table1.active:=true;
    pvtsdata.table1.first;
    while not pvtsdata.table1.eof do
    begin
       if  PVTsdata.table1.FieldValues['EXPNO']=edit1.text then
       begin
          mssagedlg('该实验名称已经存在!',mtwarning,[mbYes,mbNO],0);
          i:=false;
          break;
       end
       else
          PVTsdata.table1.Next;
         
    end;