I think it should be
ADOCommand.Parameters[0].Value := ZuShuDateP.DateTime;Because the index of Parameter always starts with 0.

解决方案 »

  1.   

    我重新加了一个ADOCommand,换成了0 ,可是错误又变成'List Index out of bounds(1)' 了,大家快帮帮忙吧
      

  2.   

    我重新加了一个ADOCommand,换成了0 ,可是错误又变成'List Index out of bounds(0)' 了,大家快帮帮忙吧
      

  3.   

    这样写呀
    procedure TZSDJForm.ZSDateRuKu;
    var
      i: integer;
      wl: string;
    begin
      i := 0;
      while i<ListBox.Items.Count do//循环加入到数据库中
      begin
        ShowMessage(IntToStr(i));
        wl := 'insert into Bbzts(BookID,CustID,ZuChuDate) values(';
        wl := wl + '''' + ListBox.Items.Strings[i] + '''' + ',';
        wl := wl + '''' + CustIDE.Text + '''' + ',';
        wl := wl + ZuShuDateP.DateTime ; ////////////////
        with DataM do
        begin
          ADOCommand.CommandText := wl;
          //ADOCommand.Parameters[1].Value := ZuShuDateP.DateTime;
          ADOCommand.Execute;
        end;
        wl := '';
        Inc(i);
      end;
    end;
      

  4.   

    date 参数前不要加引号!第一个参数index=0...
    wl := wl + '''' + ':Date' + '''';->>wl := wl + ':Date';
    ...
    params[0].asdatetime:=....
    ...
      

  5.   

    Parameters 应该是以0 开始的,试过了吗?
      

  6.   

    我也碰一个,是网络连接的,服务器要逐个返回信息给客户端,connections[]也是以0开始的,我以1开始,报一样的错误!
      

  7.   

    可是我的0已经定义了别的参数拉,那该怎么办???我有加了一个ADOCommand,然后把lastlove() 和 chechy(我爱洁洁) 的合到了一起,就好使了可为什么不能用一个ADOCommand,带多个参数,而进行添加呢????