ACCESS初心者で、色々検索しては見るものの納得できる答えが見つからず、質問させていただきます。
会社で書類を作成する為にACCESS2003を使用しています。
ネットワーク上のファイルサーバーにデーターベースを置き、5台のPC(accessにて)でそのデーターベースを読み取っては書き換える作業をしているのです。
しかし2台以上のPCでデーターベースにタイミング良くアクセスすると、固まってしまい、それが頻繁に起こります。
accessで制御しているソフトやデーターベースは社外製で、「何とかして欲しい」とお願いしてはいるのですが、中々行動にうつしてくれません。(これが最大の問題点なのは重々承知しております)
そこで各PCにデーターベースを分散し、PC内で読み書きさせる事により固まる事を防ごうと考えます。ただその場合各PC毎にデーターを更新することになり、他のPCから最新のデーターが引き出せなくなりますので、更新された分(差分)のみファイルサーバーの元データーベースにバックアップさせる事により、各PCで更新した全てのデーターが元データーベースに反映される事になると考えたのですが、そのようなソフトが見当たりません。
初心者質問で申し訳ございませんが、このような「差分バックアップ」が可能なソフトをご存知ないでしょうか?
又は同等の処理が出来る方法でも構いません。
よろしくお願いいたします!
尚全てのPCはここ数年の製品で、特に性能が悪いわけではありません。ネットワーク内も100BASEで、スイッチングHabも使用しており、ハード的な問題で固まる事は無いと考えます。
No.1
- 回答日時:
この回答への補足
ご回答ありがとうございます。
リンクをたどってみたのですが、どのソフトが該当するのかわかりませんでした。
もしかしたら文章が下手なので、私の意図が伝わらずご迷惑をお掛けしたかもしれませんね!
No.2
- 回答日時:
ご要望を実現するのは困難だと考えます。
1.複数のPCで同一レコードの書き直しが発生した場合、どうやって整合性を取るか?
2.「同一レコードの書き直し」はないとして、「書き直されたと同時に元データを更新」が可能であれば(固まらない)最初から面倒なことをせず「元データを更新」すればよいでしょう
この回答への補足
ご回答ありがとうございます。
>最初から面倒なことをせず「元データを更新」すればよいでしょう
現状がそうなっております。それをすると固まるので困っています。
accessは難しいソフトですね!
No.3
- 回答日時:
デッドロックを起こしている?
複数のファイルにまたがる排他制御を行う時にユーザ1がファイルAをロックしてファイルBのロック解放を待ち別のユーザ2がファイルBをロックしてファイルAのロック解放を待ちいつまでたっても処理が進まないケースに陥ることがあります。デッドロックはプログラムの設計に問題がある場合に発生します。(ロジック等分からないので一般的にという事で・・)
>5台のPC(accessにて)でそのデーターベースを読み取っては書き換える作業
詳細まで分かりませんがサーバー上のデータベースはAccess?SQLServer?Oracle?
5台のPC(accessにて)で・・とあるので小規模のDBとしてサーバー上もAccessとして予想で回答します。
各PCのフロントエンドとして使用しているAccessがサーバーのAccessから各PCのテーブルに単純にリンクテーブルとしてサーバー上のAccessのテーブルを使用している場合。
ツールにあるオプションの排他モードか共有モードかレコードロックの状態は全てのレコードなのか編集済みレコードなのかロックしないのか確認してみてください。
クライアントの各PCのAccessの設定を既定の開くモードを共有モードにしてロックをレコードレベルでロックして開くに変更すれば回避できるのですが。(この辺はロジック等にもよりますが)
排他モードではなく共有モードでレコードレベルでロックになっていてデッドロックを起こしているのでしょうか?
差分を更新とかすることも出来ますが開発が必要になります。
この回答への補足
>排他モードではなく共有モードでレコードレベルでロックになっていてデッドロックを起こしているのでしょうか?
確認した所、既に「共有モード」で「ロックしない」「レコードロックする」の状態になっていました。
やはり根本を解決しないと駄目なのでしょうか・・・
No.4ベストアンサー
- 回答日時:
>確認した所、既に「共有モード」で「ロックしない」「レコードロックする」の状態になっていました
この設定になっていて固まってしまう状態では根本的にマルチ環境での処理に誤りがあるとかも疑わしいですね。(と言っても予測ですが)
サーバー上のAccessとクライアントのAccessとのフロント・エンドで環境作る際で何かサーバー側で処理を実行させるイベント等が発生させている時に他クライアントがサーバー側のテーブルにアクセスするとデットロックしてしまうとかでしょうか?SQLServerなどは通常サーバー側で処理した方がレスポンスは良くなるのですが。
1台のクライアントで固まることも無く処理できていて他のクライアントがサーバー側のテーブルを開こうとすると固まるようであればやはり導入した会社で対処してもらうのが一番ですが。導入時から同様の状態が続いているのであれば賠償問題にもなりうるトラブルです。
差分ファイルの更新としては・・
サーバー側から更新するレコードを各クライアントのPCにレコード単位で抽出してワークテーブルなどに一旦保存しそのレコードを修正後サーバー側テーブルに更新をかける方法でしょうか。更新後ワークテーブルのレコードは削除しての繰り返しですが。
サーバー側にアクセスするのはそのレコードを抽出する時と更新をかける時だけになります。
ある程度Accessの知識があれば出来ます。
やはり根本的な解決が必要そうですね!
賠償問題までは発展しないと思いますが
もう一度話し合い、一から企画し直そうと思います。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- デスクトップパソコン 「自動修復でPCを修復できませんでした」と表示されPCが起動しないのですが対処法はありますか? 5 2022/05/13 09:16
- Outlook(アウトルック) 標準アカウントをOUTLOOKアプリに登録するとほかのアカウントのメールもこのアドレスに受信される 1 2023/02/03 20:34
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- その他(セキュリティ) 役所など、情報系システムのセキュリティが弱くても業務システムに問題ないか 3 2022/11/02 16:38
- ドライブ・ストレージ ハードディスクのデータ回復について 15 2022/08/22 14:55
- LINE 大変困っています。助けて下さい。 LINEの書類とデータの容量が10GBを越えiphoneのストレー 1 2022/09/27 10:29
- ドライブ・ストレージ ネットワークHDD(NAS)について教えて下さい。 11 2023/03/08 11:15
- フリーソフト AIMPに代わるおすすめのプレイヤー(フリーソフト)を教えてください 2 2022/08/11 20:32
- YouTube 新しく買ったデスクトップPCを使用すると、今までのGoogleのアカウントが使えなくなった。 1 2023/01/07 00:41
- ドライブ・ストレージ windows10 ゲーミングpc hdd 4 2022/12/30 02:37
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
3つ以上のテーブルをUNIONする...
-
Access VBA Me.Requery レコー...
-
ManagementStudioからのデータ削除
-
Access 1レコードずつcsvで出力...
-
SQLServerで同一条件レコードの...
-
データの二重表示の原因
-
2つの項目が重複するレコード...
-
Accessにインポートしたら並び...
-
数百万件レコードのdelete
-
Access2000でのExcel行の削除法
-
Access 削除クエリが重い
-
Accessでの禁止文字チェック
-
Access カレントレコードがあり...
-
テーブルのレコード削除ができ...
-
Accessの重複クエリで最小以外...
-
SQLデータ修正時に『このレコー...
-
Accessでの排他制御
-
ACCESSファイルを開こうとする...
-
Accessでの自己結合?
-
Access2000のODBCで困っています
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
3つ以上のテーブルをUNIONする...
-
2つの項目が重複するレコード...
-
数百万件レコードのdelete
-
Accessにインポートしたら並び...
-
データの二重表示の原因
-
Access VBA Me.Requery レコー...
-
ACCESSのBookmarkプロパティの...
-
Access 1レコードずつcsvで出力...
-
Access 削除クエリが重い
-
ManagementStudioからのデータ削除
-
SQLServerで同一条件レコードの...
-
非連結サブフォームのレコード...
-
Accessでレコードが更新された...
-
Accessでの排他制御
-
(ACCESS)並び替えをしないで...
-
Accessで重複したデータを一件...
-
Accessでの禁止文字チェック
-
Access カレントレコードがあり...
-
ACCESSファイルを開こうとする...
-
ACCESS【更新クエリの中断がで...
おすすめ情報