调用DATASNAP+FIREDAC的远程方法有时会执行二次SQL或存储过程的BUG
调用DATASNAP+FIREDAC的远程方法有时会执行二次SQL或存储过程的BUG
1)查询会重复执行的情形:
Result := DATASETPROVIDER.Data会触发它关联的DATASET执行一次查询
fdquery.Close;
fdquery.sql.Clear;
fdquery.sql.Text := sql;
// d.qryOpen.Open; // 此行代码必须被注释掉,否则SQL会被二次执行
Result := DATASETPROVIDER.Data; // 此行又会触发一次fdquery进行查询
2)存储过程会重复执行的情形:
Result := DATASETPROVIDER.Data会触发它关联的TFDStoredProc又执行一次存储过程
// TFDStoredProc.Open; // 此行代码必须被注释,否则存储过程会被二次执行
Result := DATASETPROVIDER.Data; // 此行又会触发一次执行存储过程
提示:咏南中间件已经修正此BUG。
本文来自博客园,作者:{咏南中间件},转载请注明原文链接:https://www.cnblogs.com/hnxxcxg/p/5955841.html