咬我,咬得到么?Open;出错,可能是因为你的
Query1的其他属性有残留的参数在,比如Params什么的,
检查一下

解决方案 »

  1.   

    或者你在Query的OnOpen事件里写了代码了?
      

  2.   

    没有,这肯定是一个 bug!!!!!!!!!
      

  3.   

    你的sql[0]没有赋值,直接读取text当然要出list index out of bound(0)了,用
    sql.clear;
    sql.add('select * from tb_1');
    open;
    不就完了,干吗要用sql.Text:='select * from tb_1'?
      

  4.   

    抱歉,不是读取,是写入。你用sql.Text:='select * from tb_1'相当于是给一个容量为0的数组写入内容,当然要报错。老兄不要那么固执,就换一下写法嘛。
      

  5.   

    请问........莫非对 .text 付值是付给了 sql[sql.count-1] 了?不过我一直都用 .text...... .text.....啊,起码在我的程序里用过 一百几十次了,为什么以前都没事? 
      

  6.   

    .text:=在Delphi3中没有问题,但在Delphi5中就会报错,也许Borland公司改写了部分内容,因此这种写法就会出问题。反正有比较保险的办法就用吧。
      

  7.   

    用了 clear....add ,但又出错了 ~~~~~~~~~哎
      

  8.   

    讨厌的 “list index out of bound(0)” 又来了 
      

  9.   

    各位,我终于发现了,原来是 statusbar1.Panels[0].Text:='完成'; 这句--------
    -------------怎么我在调试时它没错???
      

  10.   

    搞了我一个晚上,该死的 delphi,“list index out of bound(0)” 应该在 -->
    “statusbar1.Panels[0].Text:='完成';” 这句报错才对啊!!!!!!!!!!!
      

  11.   

    to hzb(Explorer):
      不懂就不要瞎说,免得误人子弟  什么叫:
       “你的sql[0]没有赋值,直接读取text当然要出list index out of bound(0)了”?
      

  12.   

    现在说说这个list index out of bound(%d)  很多人看到这个错误,都会觉得Delphi有什么方面没有做好,就开始埋怨,但是,让我们
    仔细找找原因:function TList.Get(Index: Integer): Pointer;
    begin
      if (Index < 0) or (Index >= FCount) then
        Error(@SListIndexError, Index);
      Result := FList^[Index];
    end;上面代码择自Delphi的VCL库,那个SListIndexError的定义是这样的:
      SListIndexError = 'List index out of bounds (%d)';Delphi已经在你(程序员)读错位置的时候提供了很好的保护,如果这样还不能让你
    满足的话,那我劝你还是不要写程序了,本来还有很多感慨的,懒得敲了,另外还有些调试程序时的经验,也一并省了