我用的是D7,ODAC版本是6.80的。新手,才学,以前都是用ADO,发现有这个好东西,不用装oracle客户端,就想以后用这个算了,不过用的时候,发现一个问题,我用 OraQuery1.RecordCount 来查看记录数,只有25条,可是我表里是很多的,sql语句也是 select * from xxxx的。怎么会这样呢,我用ADO就是正常的,不会有这个问题,
   敢问是不是那个属性没设置的问题,下面是代码
   
procedure TForm1.Button5Click(Sender: TObject);
begin
  OraSession1.Options.Net:=True;
  OraSession1.Username:='hyzh';
  OraSession1.Password:='hyzh';
  OraSession1.Server:='192.168.1.106:1521:oracle9i';
  OraSession1.Connect;
  OraQuery1.Session:=OraSession1;
  OraQuery1.SQL.Clear;
  OraQuery1.SQL.Add('select * from td_load');
  OraQuery1.Open;
  ShowMessage(IntToStr(OraQuery1.RecordCount));
end;
上面的记录数总是25条,

解决方案 »

  1.   

    这可能是Bug,你还是用select count(1) as RecCount from td_load查询得到记录数保险一点吧
      

  2.   

    这问题,我之前装的一个小版本的也是这样,当时就怀疑是不是版本有Bug,但这次换了一个较新的,还是这样,而且版本差距较大的,还真不知道怎么回事了。没人用过这个东西吗?
      

  3.   

    OraQuery1.FetchRows。设置这一个属性
      

  4.   

    想要取多少行就设置多少行,是有范围。如果要全取就设置FetchAll := true;
      

  5.   

    兄弟,有没有ODAC 的教程啊,有的话,能否共享一下,学习学习。谢谢