调用DATASNAP+FIREDAC的远程方法有时会执行二次SQL或存储过程的BUG

Posted 咏南中间件和开发框架

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了调用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。

以上是关于调用DATASNAP+FIREDAC的远程方法有时会执行二次SQL或存储过程的BUG的主要内容,如果未能解决你的问题,请参考以下文章

DATASNAP数据序列之FIREDAC的TFDJSONDataSets

DATASNAP数据提交之FIREDAC的TFDJSONDeltas

firedac引擎DATASNAP多表查询和多表提交

DataSnap与FireDAC三层

idhttp.post方式 调用datasnap rest 远程方法

idhttp.post方式 调用datasnap rest 远程方法(转咏南兄)