データベースへのDataSnap Server
2 つのTFDQuery's
経由TFDConnection
がありMySQL
ます。このクエリは(neested datasets)master/detail relationship
経由で行われます。TDataSource
このデータは 1 つを介してエクスポートされTDataSetProvider
ます。
クライアント側には、TDataModule
with one TSQLConnection
、 one TDSProviderConnection
、 twoTClientDataSet's
があり、1 つは the 用、もう 1 つMaster
は Neested Detail
viaDataSetField
プロパティ用です。
クライアントをテストすると、すべて正常に動作します。
問題は、同じ詳細レコードtwo clients
で作業simultaneously
しているときに、あるクライアントの 1 つの詳細に書き込んだデータが 2 番目のクライアントから見えないことです。逆もまた同様です。
Bill1、Item1、OriginalDataという単純な請求書とアイテムの関係を持つこのシナリオがあるとします。
両方のクライアントでBill1を読み取ると、両方とも同じデータを読み取ります。最初のクライアントでOriginalDataをModifiedDataに変更して実行すると、正常ApplyUpdates
に動作しますが、2 番目のクライアントで同じBill1を更新しても、変更されていないOriginalDataを読み取っています。
私がデータを書き込むと、MasterTable
すべてが正常に動作しDetailTable
、キャッシュなどからデータを取得するように見えます。BDE
コンポーネントとデータベースを介してすべてを再現しParadox
、問題はありませんが、使用する必要がありFireDac
ますMySQL
DataSnap
それでは、ここで質問です... ¿最初のクライアントで詳細レコードに書き込まれたデータが、 viaFireDac
と で更新を呼び出した後、2 番目のクライアントから見えないのはなぜMySql
ですか?
Delphi Xe5 update 2 を使用しています。
注:Master/Detail
は であるparametrized Query
ため、一度にアクティブになる請求書は 1 つだけです。
繰り返しますが、私の下手な英語で申し訳ありません。