我的代码如下:
procedure TFrmShow.selectClick(Sender: TObject);
begin
  ibquery1.close;
  if not (ibquery1.prepared) then ibquery1.prepare;
  ibquery1.ParamByName('inusername').AsString:=username.text;
  ibquery1.ParamByName('inusercode').AsString:=usercode.text;
  ibquery1.ParamByName('inreaddate').AsString:=MEdate.text;
  ibquery1.ParamByName('inreadtype').Asinteger:=strtoint(leftstr(metertype.text,1));
  ibquery1.Open;
end;
 属性设置如下
 datesource1.dataset:ibquery1
 dbgrid.datasource:datesource1
我整了老半天都没搞定。究竟哪里出了错?求助个大虾!!

解决方案 »

  1.   

    datasource
    我用的是d7版,分不够我再加!
      

  2.   

    从你的设置看应该是没有没有问题的
    关键是你的sql能否查得数据啊
    先用个简单的条件看看
      

  3.   

    同意楼上的说法,加个if not ibquery1.eof then ...吧
      

  4.   

    我已经把ibquery1的active属性设为true了
    select     
        USER_NAME,USER_CODE,READ_DATE,READ_TYPE
    from
       TABLE_READ
    where
             USER_NAME=:inusername 
          OR USER_CODE=:inusercode
          OR READ_DATE=:inreaddate 
          OR READ_TYPE=:inreadtype
      

  5.   

    select     
        USER_NAME,USER_CODE,READ_DATE,READ_TYPE
    from
       TABLE_READ
    where
             USER_NAME=:inusername   // 改为USER_NAME=inusername   
          OR USER_CODE=:inusercode   //以下同理
          OR READ_DATE=:inreaddate 
          OR READ_TYPE=:inreadtype
      

  6.   

    我加上了if not ibquery1.eof then 。5555555555,ibquery1.eof为ture!!!!!-------------我更不会了,接下来应该怎么做,是不是我的ibquery1设置还有问题??急!!
      

  7.   


             USER_NAME=:inusername   // 改为USER_NAME=inusername   
          OR USER_CODE=:inusercode   //以下同理
          OR READ_DATE=:inreaddate 
          OR READ_TYPE=:inreadtype=:A
    =:B
    这有区别么?
    我去试试看
      

  8.   

    楼上的,这有区别。我照做后,编译出错,就是sql的错。呵,在等
      

  9.   

    (1)  先看看参数是否传递进去:
                ShowMessage(ibquery1.ParamByName('inusername').AsString);
                --------------------------
                --------------------------
             (2)   再看看是不否有查询记录:
                ShowMessage(inttostr(ibquery1.RecordCount));         // 假如有记录数就是你的设置有问题
      

  10.   

    我哭!!RecordCount=0!!哪的设置出了问题呢??!困惑!!再看看
    coeltdit(睫毛上的冰) ,怎么办?
      

  11.   

    1,ibquery1.eof为ture;
    2,参数传递进去了;
    3,RecordCount=0;
    问题出在1和3上,怎么搞的!?依然困惑!
      

  12.   

    当我执行ibquery1.First;时
    error在这:ibquery1 cannot perform this operation on a closed dataset
    问题应该出来了,不过我的active设为ture 了,怎么会呢?