こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

レコードが勝手に移動する

Access(SQL Serverのテーブルをリンクテーブルとして使用)
でレコードを新規追加した直後に勝手に別のレコードに移動する現象が起きます。
親フォームに入力した後、サブフォームに入力しようとした際などにも勝手に移動してしまうので、まともに入力ができません。

・追加自体は正常にされている。
・フォームのレコードソース的にありえないレコードに移動することもある。(レコードソースが「SELECT * FROM Test WHERE Col1=1」なのに、勝手に移動して「Col1=1」以外のレコードが表示されたりする。
・SQL Server のマージレプリケーションをやめるとこの現象は起きない。
・SQL Server で新しいスナップショットを使って再同期させると必ずこの現象が発生するが、数日後には起きなくなる(全く起きなくなるかは不明。起きる確立はかなり減る)。
・特定のPCだけで起こるわけではない。

※マージレプリケーションの対象は、すべてのテーブルとビュー(インデックス付ビューも含む)です。

何かいい解決案はないでしょうか?
お願いいたします。

▼サーバー
OS:Windows Server 2003 R2 SP2 Enterprise
DB:SQL Server 2005 Standard SP2
▼クライアント
Access 2003

投稿日時 - 2007-08-23 18:51:08

QNo.3280173

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(1)

ANo.1

確認ですが、検索条件のキーとなっている
Col1という項目ですが、主キーでしょうか?

もし、Col1が主キーでない場合は、SQL Server側で
インデックスを貼ってみるといいかもしれません。

またその時に、1日に1回程度、インデックスの再構築する
Agentをしかけておくといいかもしれません。

ご参考になれば幸いです。

投稿日時 - 2007-09-02 15:20:19

お礼

返事が遅くなってごめんなさい。
ご回答ありがとうございます。

特にWHERE条件を設定していない場合でも勝手に移動するフォームもあるんです。。。。(泣)
しかも、勝手に移動するのは一つのテーブルだけではありません。

正直いって、SQL SERVER のせいかAccessのせいかもわかりません。
ためしにAccess2007でやってみると、この超常現象は起きませんでした。
(時間がたって勝手に治ったのかは不明です。)

最終的には、すべてのビューをレプリケーションのアーティクルから外して、各サーバー毎にローカルのビューを作ったところ、解消された風(再同期してもOKでした)なので、それで様子をみています。

投稿日時 - 2007-09-07 23:36:43

-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-