トップカテゴリー
>
テクニカルFAQ-一般公開向け-
>
DataSpider関連
>
DataSpider Servista
>
【DataSpider Servista】同一トランザクション内で更新済みのレコードについて[SQL実行によるデータ取得]を実行すると、更新前のデータを取得してしまいます。
戻る
No : 32737
公開日時 : 2021/02/16 15:54
更新日時 : 2021/02/17 12:19
印刷
【DataSpider Servista】同一トランザクション内で更新済みのレコードについて[SQL実行によるデータ取得]を実行すると、更新前のデータを取得してしまいます。
[トランザクション]コンポーネント内で、DBの特定のレコードについて更新するSQLを実行後、[SQL実行によるデータ取得]ロジックを実行し、該当レコードのデータを取得すると更新前のデータを取得してしまいます。
原因と対応策を教えてください。
カテゴリー :
トップカテゴリー
>
テクニカルFAQ-一般公開向け-
>
DataSpider関連
>
DataSpider Servista
回答
■仕様説明
[SQL実行によるデータ取得]ロジックは、トランザクションに参加しておらず、都度クエリを発行しデータを取得しております。
このため、データ取得結果はDB側のトランザクション分離レベルに依存します。
■想定される原因
[SQL実行によるデータ取得]ロジックの実行時に同一トランザクション内の更新処理の結果がコミットされていないことが原因と想定されます。
■想定される対応策
[SQL実行によるデータ取得]ロジックでデータを取得している箇所を該当のDBアダプタの[検索系SQL実行]処理に置き換えることで、更新後のデータが取得可能かご確認ください。
■参考
[SQL実行によるデータ取得]
URL:
https://www.hulft.com/help/ja-jp/DataSpider/latest/help/ja/mapper/document/logic/executeSelectQuery.html
Version Information
Ver.4.2、Ver.4.1、Ver.4.0
目的別で検索
設定