こんにちはすべて私は、3.5フレームワークで書かれた.net Webサービスからの同時ストアドプロシージャ呼び出しに関する質問があります。.net Webサービスで重複した応答をもたらす並行トランザクション呼び出し
多くのユーザーが使用し、Oracleデータベースから連絡先情報を返す必要があるWebサービスを構築しています。 問題は、dbが同じ連絡先情報を返すと同時に2人以上のユーザーがクリックした場合です。 SPに状態更新クエリを書きました。ステータスの更新が行われる前に、2つ以上の要求が同じレコードを読み取った場合にのみ、この問題が発生しています。私はトランザクションとトランザクションスコープを使用しましたが、問題は解決しません。私が問題に正しく取り組んでいるかどうか、私は別の方法で見ているべきかどうか誰にでも教えてもらえますか?どんな助けでも大歓迎です。
別のトランザクションによって変更されているかどうかを確認せず、その後IDに基づいてUPDATEをSELECTをやっているUmmmm、我々は14分を持っている
する必要があります何のために? ...いずれにしても、この質問にはより多くの情報が必要です:ウェブサービスとSPソースコード。また、問題をよりよく述べる必要があります。期待される行動は何ですか?説明できない「ステータス更新クエリ」とはどのように関連していますか?一人のユーザーがWebサービスにアクセスしたときの動作はどうですか?複数のユーザーがアクセスすると、どのように動作しますか?質問を編集して改善すると、私は下線を引っ込めます。 – mikemanne
14分はタイプミスです。そのために残念。 – Deepak
Webサービスは、データベースからレコードを読み取り、ステータスを読み取りとして更新するストアドプロシージャを呼び出します。別のユーザーがWebサービスを呼び出し、以前のトランザクションがステータスが更新されていない状態で実行されている場合、2番目のユーザーも同じレコードが返されます。したがって、呼び出しが並行しているときに2人のユーザーが同じレコードを返すことになります。予想される動作は、各ユーザーが一意のレコードを取得することです。 2つのWebサービスコールの間に時間差がない場合、この問題が発生します。詳細が必要な場合はお知らせください。 – Deepak