调用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。

posted @ 2016-10-13 11:31  delphi中间件  阅读(1067)  评论(1编辑  收藏  举报