Access2003を使用してアプリケーションを作成してます。


数年前に旧バージョンを開発し、旧バージョンから機能を追加するため、現在新バージョンを開発しています。

検証のためにデータを旧バージョンから引き継ぐため、旧バージョンからテーブルをインポートしているのですが、あるタイミングからインポート時にエラーが起き、
「ほかのユーザーが同じデータに対して同時に変更を試みているので、プロセスが停止しました」
旨のメッセージが出るようになりました。

このメッセージが出る原因はわかっていて、旧バージョンで運用しているときに、LAN上で別のPCから開いたり保存したりしていたので、そのせいだと思われます。

今回お聞きしたいのは
・こういった場合にエラーを回避する方法、
・旧バージョンの上記ファイルロック状態を解除する方法
をお尋ねしたいと思います。

旧バージョンを開いた時に、データベースウインドウ(つまり、テーブル一覧とかクエリ一覧とか)が出さえすれば、直接コピペできるのですが、納品時の設定でデータベースウインドウは開かないようにしてあり、コピペができませんので、それを踏まえてご助言いただければと思います。

回答の条件
  • 1人2回まで
  • 登録:2007/03/21 20:26:52
  • 終了:2007/03/22 00:22:13

回答(2件)

id:llusall No.1

llusall回答回数505ベストアンサー獲得回数612007/03/21 21:07:58

ポイント900pt

ポイントは、

・他のユーザに開かれないように、排他モードでAccessのmdbのファイルを開いて作業する。

・納品時の設定を無視して、データベースウインドウを開いて作業する。

ということだと思います。


次の手順でAccessのmdbのファイルを開きます。

・[スタートメニュー]の[プログラム]-[MicrosoftOffice]から、[MicrosoftAccess]をクリックしてAccessを起動する。

・[ファイル]メニューの[開く...]をクリック。[ファイルを開く]ダイアログを表示。

・Accessのmdbのファイルを指定して、[開く]ボタンの右にある[▼]ボタンを押す。

・[排他モードで開く]をクリックして、排他モードで開く。

※この[排他モードで開く]を押す際に、[Shiftキー]を押下しながら開くと

  納品時の設定を無視して、データベースウインドウを開くことができます。


あとは、望みの作業をすれば良いかと思います。


※作業対象とするAccessのmdbのファイル(旧バージョン)を誰も使用していないにもかかわらず、

拡張子[.ldb]のファイルが同じフォルダに存在する場合は、なんらか(誰かしら)のロック情報が

残った状態にあるかもしれません。この場合は、拡張子[.ldb]のファイルをリネームするかゴミ箱

に捨ててかまわないかと思います。

id:xtra

回答ありがとうございます。

下に結果をご報告します。

2007/03/21 22:37:01
id:llusall No.2

llusall回答回数505ベストアンサー獲得回数612007/03/21 21:34:13

ポイント100pt

再回答ですみません。

先ほどのShiftキーを押下しながらAccessのmdbファイルを開いた際に、データベースウィンドウが表示されていない場合は、

[F11]キーを押下してください。


あと、このようにして排他的に開いたAccessのmdbファイルから、新システムのテーブルに「エクスポート」してください。

id:xtra

教えていただいた方法でデータベースウインドウを開くことはできましたが、そこからエクスポートやコピー・貼り付けをしようとすると、やはり同じアラートが出てしまいます。

全内容を抜き出すクエリを書いてみましたが、同様です。

旧システムのロックを強制的に解除する方法はないものでしょうか…。

2007/03/21 22:36:59
  • id:xtra
    llusallさん、的確な情報をありがとうございました。
    おかげさまで無事に移行でき、確認も終えております。助かりました。
    気持ちだけですが、ポイントを配分しております。ご確認ください。

    同じ悩みを持たれた方のために、教えていただいた内容をコメントとして載せておきます。

    ***** 以下、llusallさんからの情報です。
    マイクロソフトの技術情報から、ようやく見つけました。 どうやらmdbファイルが破損していると思われます。 次の技術情報の「詳細」のところに復旧手順が記されています。 こちらで駄目となるとお手上げかもしれません。

    Access 2000、Access 2002、または Access 2003 で破損したデータベース テーブルからデータを復旧する方法
    http://support.microsoft.com/kb/247771/ja

    以下は、その他、参考 ================================================================================== Access 2002 以降の破損したデータベースをトラブルシューティングおよび修復する方法
    http://support.microsoft.com/kb/283849/ja

    壊れてしまったファイルや予期しない動作を示すファイルを修復する方法 http://support.microsoft.com/kb/881388/ja
  • id:llusall
    たくさんのポイントを頂、ビックリしました。
    ありがとうございます。

    このところ「人力」にはガッカリすることが多く、心がすさんでおりました折、とても励みになりました。(このような回答でこんなに頂けるのは心苦しい気がしますが・・・)

    それと、無事に移行できて、私もほっとしました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません