
仕事でWindows XP Professional、Microsoft Access 2003を使用しています。
Accessの知識は低いです(本を見ながらVBAを組んだりする程度)。
データベースは、5年ほど前にAccess 2000で作ったもので、ネットワークドライブにあり、現在、改良等はAccess 2003で行っていますが、データベースを使用するクライアントは、Windows 2000(Access 2000)とWindows XP Pro(Access 2003)の複数環境です。
データベースは、1つのテーブルに、1つの抽出クエリ、レポートはそのクエリから呼び出して表示すると考えてください。
レポートを表示させるときに、クエリからデータを引っ張ってくるのですが、数ヶ月前から、突然必要のない「パラメータの入力」ウィンドウが複数回表示されるようになりました。
直接の原因は、クエリに存在しているはずのフィールドが、数個消滅していて、再度クエリにフィールドを追加すれば直ります。
直してしばらく使えるのですが、4~5日経つと、また壊れるという状況です。
また、データベースには、1年以上大きな変更を加えていません。
レポートのラベル(単なる文字)や位置を変更するのみのメンテナンスしか行っていません。
ちなみに、このデータベースファイルのテーブルへは、別のデータベースファイルからも「テーブルのリンク」としてリンクされていますが、クエリやレポートは単独です。
個人情報を扱うファイルのため、外部に持ち出せず、職場でOK Waveにアクセスしづらい状況で、知識も乏しいことから、あまり詳しく提示できないのですが、勝手にクエリ内のフィールドが消えてしまう原因は、どういうことが考えられますか?
参考程度でも結構ですので、アドバイスをお願いします。
(この程度のレベルの人が、重要なデータベースを管理していることに一番の問題があるのは分かっているのですが…)
No.1ベストアンサー
- 回答日時:
初めまして。
誰でも始めはあるものです。皆んな手探りでやって、失敗しながらやってますよ。プロでもね。。。
状況的にはMDB内でオブジェクトの不整合が発生している事が考えられますので、データテーブルは別との事ですので
一度、アプリ用MDBを新規に作成して、そこに元のMDBから各オブジェクトをインポートして作り直してみてください。
それとアプリ用MDBは、定期的に最適化を行うようになっていますか?壊れる可能性もあるとの前提で、
運用システムは考えた方が良いですよ。
本番用MDBと保守用MDBを分けて、メンテナンスは必ず保守用MDBで行い、
テストが完了したら本番用MDBに移行するとかの手順を確立した方が良いですね。頑張ってください。。。
この回答への補足
こちらに失礼します。
とりあえず、一旦締め切って、様子を見てみます。
kirara77さん、nicotinismさん、ありがとうございました。
ありがとうございます。
どんどん使いやすいように改良したつもりで、結局メンテナンスしづらい構造になってしまい、
不甲斐なさに悩んでおりましたが、少し勇気付けられました。
元のMDBも、テーブルのリンクが設定してあるMDBも、終了時に最適化を行うようにしています。
バックアップは定期的に取るようにしていますが、バックアップソフトをインストールさせてもらえず、
別フォルダにコピー&貼り付けをしています…。
確かに、MDBファイルを直接いじって変更していますので、
一度保守用MDBを再構築して、様子を見たいと思います。
No.2
- 回答日時:
Access ファイルを共有している場合には
誰かが開いていると「閉じる時に最適化」が有効に働きませんので
私は全ての端末で無効にしています。
そして適宜、頃合を見て最適化を行っています。
また今回の件には無関係かもしれませんが
「名前の自動修正情報をトラックする」もチェックが入っていると
たまに不可解なエラーの元になる事が有りましたので外しています。
バックアップの件は下記リンクのような世代バックアップは必要ですね。
データベース自動バックアップ関数 (FSO)
http://www.moug.net/tech/acvba/0070012.htm
あとは・・
データが入っているMDBはファイルサーバに置き世代バックアップをとり、
アプリのMDB(クエリ・フォームなど)は各自の端末に配り
データMDB とはテーブルリンクで接続しておいた方がトラブルは少ないし
何かあってもダメージは軽いように思えます。
この回答への補足
こちらに失礼します。
とりあえず、一旦締め切って、様子を見てみます。
kirara77さん、nicotinismさん、ありがとうございました。
ありがとうございます。
ファイルは最後のユーザーが閉じるときに最適化されるはずなので、閉じるときに時間がかかっても、それは待つように教えています。
また、ファイルが5MB位あり、少し放置すると、勝手に12MBとかになっていたりするので、最適化は有効にしておりますが、やはりその方法も考えたほうが良いのですね。
また、テーブルのみのMDBをサーバーに置き、変更したMDBをネットワークにのせ、全ユーザーにダウンロードしてもらうというやり方も考えたのですが、これは変更がかかる度に10人ぐらいいるユーザーに連絡したり、そのDL作業をしてもらうのは、ユーザーの仕事のジャマになるらしく、今のような使い方をしなければなりませんでした。
(私的には全く難しい作業ではないのですが、ユーザーに初心者が多いため)
あと、世代バックアップの件は、こんな方法があるのか!と感動してしまいました。参考にさせていただきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
アクセスのエラー「クエリには出力フィールドが1つ以上必要です。」
その他(Microsoft Office)
-
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
Accessでデータシートに同じデータがいくつもでてしまいます。
その他(データベース)
-
-
4
テーブルに表示されているものがクエリに表示されない
Access(アクセス)
-
5
ACCESSでVBAから選択クエリの抽出条件を指定したい
Access(アクセス)
-
6
Accessでテーブルの値をテキストボックスに代入するには?
Access(アクセス)
-
7
選択クエリで空欄のテーブルがあっても表示したい
Access(アクセス)
-
8
access テキストボックスの値取得
Access(アクセス)
-
9
ACCESSのフォームからデータの追加ができない
その他(データベース)
-
10
access 存在しない項目を”0件”と表示させるには?
その他(データベース)
-
11
access2021 強制終了してしまう
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
他のデータベースとのテーブル結合
-
Microsoft Access:クエリのフ...
-
Access97修正ロック方法の設定
-
SQliteの日付検索について
-
データベースのインポートがで...
-
Notion@リレーション値の取得...
-
QSL でのフォーム画面作成について
-
ASP.NETからSQLServerに接続出...
-
SQL Serverのテーブル作成のエラー
-
ACCESS アクセスで他のデータ...
-
AccessのSQL 部分一致したデー...
-
一つ前に戻るには…
-
降順で並び替えて昇順で受け取...
-
SELECT 文の NULL列は?
-
sqlplusで表示が変なので、出力...
-
外部キーだけのテーブル(主キ...
-
SQL、2つのテーブルで条件一致...
-
会社の飲み会の幹事になり、座...
-
SQLにて指定日付より前、かつ最...
-
「テーブルに座って……」という...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
他のデータベースとのテーブル結合
-
Oracleのsystem表領域について
-
ACCESS アクセスで他のデータ...
-
2台のサーバー間でのテーブル...
-
Visuaal Studio Community 2022...
-
SQliteの日付検索について
-
Notion@リレーション値の取得...
-
QSL でのフォーム画面作成について
-
Accessでテーブルを外だしにす...
-
Microsoft Access:クエリのフ...
-
Accessで2種類のデータベースを...
-
SQL Server 2000 テーブル未使...
-
コマンドラインオプションにパ...
-
データベースのレコード内容が...
-
テーブル単位のエクスポート、...
-
構造が同じ別テーブルInsert In...
-
一つのMySQLデータベースで、複...
-
データベース単位でのCSV出力方...
-
データベースを複数作ったほう...
-
SQLServer(MSDE)のデータベー...
おすすめ情報