2017-01-01 116 views
0

我想使用ArrayDML插入记录到SQLite数据库。设置TFDQuery.Params.BinMode,下面的代码无法编译在pbByNumberFireDAC pbByNumber在哪里定义?

请在此处定义此值。

FDQuery1.Connection := FDConnection1; 

FDQuery1.Params.BindMode := pbByNumber; // this fails to compile 

with FDQuery1 do 
begin 
    SQL.Text := 'insert into ' + ourTableName + ' (' + 
    'ProdID_0, ProdString_0, ProdBlob_0, ProdFloat_0,' + 
    ') values (' + 
    ':p00, :p01, :p02, :p03 ' + 
    ')'; 

// Set up parameter types 
    Params[0].DataType := ftInteger; 
    Params[1].DataType := ftString; 
    Params[1].Size := 1024; 
    Params[2].DataType := ftFloat; 

// add values 
    for ii := 0 to Params.ArraySize - 1 do begin 
    Params[0].AsIntegers[ii] := ii; 
    Params[1].AsStrings[ii] := 'Some string ' + IntToStr(ii); 
    Params[2].AsFloat := 3.14; 
    end; 

    // Execute batch 
    Execute(numInserts, 0); 
end; 
+0

单位是FireDAC.Stan.Param,枚举是TFDParamBindMode,您可以编写TFDParamBindMode.pbByNumber。为什么它应该引发异常? – Loghman

+0

感谢,似乎工作。 – jcsubmit

回答

0

作为Loghman已经评价,单位为FireDac.Stan.Param

您可以使用Embarcadero DocWiki search自己找到: searching for pbByNumber