我正在运行Delphi DX Seattle 我正在查看数据快照示例
Samples \ Object Pascal \ DataSnap \ FireDAC \ SampleDataSnapFireDAC_ProjectGroup.groupproj
我并不担心实际上正在反转一个字符串,只是想知道数据快照调用为什么会出现以下错误
这些是我可以用
再现错误的步骤
第1步:启动服务器
第2步:启动客户端
第3步:单击反向字符串按钮,然后键入"测试"。工作正常
第4步:再次单击反向按钮,然后键入" testtest"。它因此错误而失败
错误
[FireDAC] [斯坦] -704。可变长度数据参数[Value]溢出。值长度 - [8],参数数据最大长度 - [4]。
我可以改变步骤3和4,例如
第1步:启动服务器
第2步:启动客户端
第3步:单击反向字符串按钮,然后键入" 123456789"。工作
第4步:再次单击反向按钮,然后键入" 123" .works
步骤5:再次单击反向按钮并键入" 123456789abcd" .fails
如果字符串大于第一次调用,它似乎在第一次调用后中断 这是样本执行的代码
procedure TClientForm.Button1Click(Sender: TObject);
var
AString: string;
begin
AString := InputBox('Reverse String', 'Enter a String', '');
if AString <> '' then
begin
FDStoredProcReverse.Params[0].Value := AString;
FDStoredProcReverse.ExecProc;
ShowMessage(FDStoredProcReverse.Params[1].AsWideString);
end;
end;
有更好的方法吗?
有没有其他人得到这个错误?