用的是MSSQL,且表Table的ID为int自累加型。
var tmpID:integer;
.....
clientdataset1.Active:=True;
clientdataset1.Last;                             // 表中ID为24
tmpID:=clientdataset.fieldbyname('ID').AsInteger;//始终为0
望高手相助!

解决方案 »

  1.   

    clientdataset1.refresh后也还是为0,
    谢谢!
      

  2.   

    赋值语句中怎么是clientdataset???是不是拿错表了?
      

  3.   

    我觉得如果你在是Post之前去得以ID的值是肯定不行的,但你的代码中并没有使数据集处于插入状态啊!你试试用Query控件做,能不能得到ID的值呢?
      

  4.   

    你的代码写错了,你的TClientDataSet控件的名称为clientdataset1,而你赋值时却用了
    tmpID:=clientdataset.fieldbyname('ID').AsInteger;//始终为0
    应该改为:
    tmpID:=clientdataset1.fieldbyname('ID').AsInteger;//始终为0
      

  5.   

    tmpID:=clientdataset1.fieldbyname('ID').AsInteger;还是不行
      

  6.   

    你再检查一下你clientdataset中的CommandText,是不是sql语句没有选择正确.