設計について根本的な質問です。
初歩的なことで申し訳ありません。
見切り発車でツールの作成を始め、なかなか複雑になってきたのでどこかで整理しなくてはと思い、改めて理想的な設計の形について知りたいのですが、以下の認識で正しいでしょうか。
●できるだけテーブル同士でフィールドが被らないようにする。(被るのはそれぞれのテーブルの主キーのみとなる)
●被らせないということは、残りはクエリでカバーする。
●クエリもごちゃついてくるため、SQLを埋め込んだほうが良い。
●VBAとSQLの使い分け…?
整理しようとすると色々課題はつきませんが、まずは被ったフィールドを洗い出そうと思っています。
認識間違っていないか、何卒アドバイスをお願いします。
おおむね、その理解でいいと思います。
具体的には「正規化」をキーワードでWEB検索してみてください。
厳密な設計方の解説がいろいろ見つかると思います。例えば下記のサイト。
正規化 カテゴリーの記事一覧 - もう一度学ぶMS-Access
完全に理解するのは簡単ではないですが、ざっと読んで雰囲気をつかんでおくいいでしょう。
クエリとフォームとレポートですね。
集計、抽出、データ分析などはクエリ、
データの入力、閲覧はフォーム、
データの出力、印刷はレポート、
というように使い分けます。
もちろんそれぞれを組み合わせより使いやすいものにすることも必要になります。
まずはクエリ、フォーム、レポートの機能を理解することが先決ですね。
それで不足する部分を改善したい、より高度の機能を追加したいというときにVBAとSQLを使用するという感じでしょうか。
フォームでと、コンボボックス、リストボックス、サブフォームの機能を理解して利用するとVBAなくてもかなり高度なことができます。
レポートはグループ化の機能を理解すると、見やすいレイアウトの出力が可能になります。
アドバイス、ありがとうございます!正規化、なかなか難しいですね。日々実践しながら勉強の日々です。