利用列表框为查询参数赋值

procedure TForm1.Button1Click(Sender: TObject);
var
  I: Integer;
  ParamStr: string;
Begin
  QueryParam.Close;
  for I := 0 to QueryParam.ParamCount - 1 do
  //获取查询组件的参数个数,并将其作为循环控制变量的终值
  begin
    ParamStr := ListBox1.Items[I];
    //获取列表框中的第I个查询参数值
    case QueryParam.Params[I].DataType of
    //此CASE语句,根据查询参数的数据类型,确定赋值形式,
    //查询参数的数据类型有36种,详见表8-1的说明
      ftString:
        Query1.Params[I].AsString := ParamStr;
        //为查询参数赋值
      ftSmallInt:
        QueryParam.Params[I].AsSmallInt := StrToIntDef(ParamStr, 0);
        // 如果字符串是一个有效的数字(10进制或16进制),则StrToIntDef函数
        //将其转换成数字,否则,该函数返回缺省值,此处大缺省值为0
      ftInteger:
        QueryParam.Params[I].AsInteger := StrToIntDef(ParamStr, 0);
      ftWord:
        QueryParam.Params[I].AsWord := StrToIntDef(ParamStr, 0);
      ftBoolean:
        begin
          if ParamStr = 'True' then
            QueryParam.Params[I].AsBoolean := True
          else
            QueryParam.Params[I].AsBoolean := False;
        end;
      ftFloat:
        QueryParam.Params[I].AsFloat := StrToFloat(ParamStr);
      ftCurrency:
        QueryParam.Params[I].AsCurrency := StrToFloat(ParamStr);
      ftBCD:
        QueryParam.Params[I].AsBCD := StrToCurr(ParamStr);
      ftDate:
        QueryParam.Params[I].AsDate := StrToDate(ParamStr);
      ftTime:
        QueryParam.Params[I].AsTime := StrToTime(ParamStr);
      ftDateTime:
        QueryParam.Params[I].AsDateTime := StrToDateTime(ParamStr);
    end;
  end;
  QueryParam.Open;
  //赋完值后,执行查询语句
end;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值