我有一个装有2个脚本的TFDScript组件。
在我的代码中,我尝试使用
执行选定的脚本TFDScript1.ExecuteScript('InsertScript');
但我收到此错误
[DCC Error] StartTask.pas(77): There is no overloaded version of 'ExecuteScript' that can be called with these arguments
答案 0 :(得分:2)
查看the documentation,您预计会传递TStrings
个实例,但是您只是尝试传入String
。您需要创建一个TStringList
实例并将其作为参数传递。您收到的特定错误表示您传递的参数与预期的参数不同。
var
Script: TStringList;
begin
Script:= TStringList.Create;
try
Script.Text:= 'Some SQL Script';
FDScript1.ExecuteScript(Script);
finally
Script.Free;
end;
end;
如果您已加载脚本,请改为调用ExecuteAll
。
如果由于某种原因,您希望一次只执行一个脚本,则创建多个TFDScript
实例。该组件似乎并非设计为一次只运行多个脚本中的一个。