gpt4 book ai didi

delphi - 为什么带参数的 FireDAC SQL Server 查询失败?

转载 作者:行者123 更新时间:2023-12-02 00:10:45 28 4
gpt4 key购买 nike

这是我第一次使用参数进行查询。 (在 SQL Server 中使用 Delphi Seattle 和 FireDAC)

(一旦我开始工作,我计划使用 DML。)

为什么我会收到此错误:

[FireDAC][Phys][ODBC][Microsoft][SQL Server Native Client 11.0]
[SQL Server]Incorrect syntax near ':'.

使用此查询:

procedure TForm2.Button1Click(Sender: TObject);
var
FDParam: TFDParam;
begin
FDQuery1.SQL.Text := 'CREATE TABLE TestTable (Column1 Int)';
FDQuery1.ExecSQL;

FDQuery1.SQL.Text := 'INSERT INTO TestTable (Column1) VALUES (111)';
FDQuery1.ExecSQL; // works fine

FDParam := FDQuery1.Params.Add;
FDParam.Name := 'Column1';
FDParam.DataType := ftInteger;
FDParam.Paramtype := ptInput;

FDQuery1.SQL.Text := 'INSERT INTO TestTable (Column1) VALUES(:Column1)' ;
FDQuery1.ParamByName('Column1').AsInteger := 222;
FDQuery1.ExecSQL; // FAILS
end;

最佳答案

肯和约翰:感谢您的评论。

这里有人将连接的 ResourceOptions.ParamCreate 和 ParamExpand 设置为 false。

在 FDQuery 中覆盖它消除了问题。

再次感谢您。

关于delphi - 为什么带参数的 FireDAC SQL Server 查询失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35803697/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com