- 締切済み
SQLデータ修正時に『このレコードは他のユーザーによって変更されています。~』
お世話になります 早速ですが、現在ACCESS97で作成したフォームで SQLServer7 上のテーブルをリンクしてさわってるのですが あるフォームのみデータ変更時に下記メッセージが出て どうしても修正ができません。 ************************************************************ 『このレコードは他のユーザーによって変更されています。 [レコードの保存] を選択すると、他のユーザーによる変更を無視し、 自分が行った変更を反映します。 [クリップボードにコピー] を選択すると、変更したデータはクリップボード にコピーされ、他のユーザーによる変更が反映されます。 必要に応じて、クリップボードのデータを貼り付け、自分が変更した データに戻すこともできます。 「レコードの保存(S)」 「クリップボードにコピー(C)」 「他のユーザーによる変更を反映(D)」 *********************************************************** しかも「レコードの保存(S)」ボタンはグレイアウトされており 押すことができない為、データ変更が全くできません。 また、以前から存在するデータは修正が可能なのですが、 このフォームで新規に追加したレコードのみ上記の現象で 修正できない状況です。(新規追加時にコミットされずに宙ぶらりんな感じ・・・) こうなったレコードはACCESS97上からリンクしたテーブルを直接開いて修正しようとしても 同様のメッセージが出て修正不可のままです。 結局SQLのエンタープライズマネージャから修正するしか手がないのですが、 どうしてこんなことになってしまうのでしょうか? どなたかお知恵をお貸しください。 どうかよろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- penpen7
- ベストアンサー率33% (25/74)
#1です。 うーん。。。前回の作業のプロセスが残っていてそれが掴んでいるのではないでしょうか?SQLサーバは、使用した事がないのですが、sp_who コマンド(プロセスチェックのコマンド)でプロセスチェックをしてロックが掛かっているプロセスをkillしてみてはどうでしょう?
- penpen7
- ベストアンサー率33% (25/74)
デッドロックが掛かっているのではないでしょうか?あなたがデータベース管理者ならデッドロックを解除してから再度更新をかけてみて下さい。ユーザならDB管理者に連絡してみて下さい。
補足
それも疑ったのですが、テスト環境のためこのテーブルを使用しているのは、私一人のみで、 開いているフォームも1つのみで、そのフォームで使用しているテーブルもこのテーブルのみなんです。 この状況ではデッドロックになりようがないと思うのですが・・・ いかがでしょうか。