我取dataset.recno,为什么会出现第一条是-1,第二条是1?

解决方案 »

  1.   

    dataset.recno你这个是什么方法?我怎么从来没有见 过
      

  2.   

    却时是会把当前条的recno默认为-1
    你可以
      with DataSet do
      begin
        if RecNo > 0 then
          FieldByName('ID').AsInteger := RecNo
        else
          FieldByName('ID').AsInteger := 1;
      end;
      

  3.   

    这就行了
      with DataSet do
      begin
        if RecNo > 0 then
          FieldByName('ID').AsInteger := RecNo
        else
          FieldByName('ID').AsInteger := 0;
      end;
      

  4.   

    其实-1 是代表BOF or EOF的
      

  5.   

    可是我的记录不为空,我在append一条记录后他还是-1
      

  6.   

    却时是会把当前条的recno默认为-1????????、 学习 
      

  7.   

    with DataSet do
      begin
        if RecNo > 0 then
          FieldByName('ID').AsInteger := RecNo
        else
          FieldByName('ID').AsInteger := 0;
      end;
    在append后RecNo会变成-1因为append的记录回在第一条。要想要从1的顺序,再加个字段吧。