データベースの計画データベースを作成する前にさまざまな要素を十分に検討しておくと、データの入力や検索の方法が統一されるだけでなく、データベーステーブルでデータが重複することも少なくなります。リレーショナルデータベーステーブルの機能を使用すると、最新のデータを必要なときに得ることが可能になります。実際にリレーショナルデータベースを作成する前に、どのようなデータベースにするのか紙の上で計画してみることをお勧めします。
1. どのような目的でデータベースを作成するのか、またはどのような問題を解決する必要があるのかを決めます。たとえば、顧客一覧の作成、在庫管理、生徒の成績の記録などが考えられます。
2. データベースに保存する情報について考慮します。通常、情報は大きなカテゴリに分けることができます。データベースにはさまざまなタイプや量のデータをカテゴリに分けて保存するため、効率的なデータベースを設計するには、カテゴリを正確に識別することが重要です。たとえば、売上を管理するデータベースでは、「顧客」、「製品」、「請求書」などのカテゴリを使用します。生徒の成績を記録するデータベースでは、「生徒」、「クラス」、「課題」などのカテゴリを使用します。
3. 大まかなカテゴリを決定したら、これらのカテゴリの関係について考慮します。このために、「顧客が製品を注文する」、「請求書に顧客の注文を記録する」のように、カテゴリの相互関係を簡単な文章で表現します。これらの各組み合わせが、一方のカテゴリにあるデータと、他方のカテゴリにあるデータのリレーションシップを示します。データベースの用語では、これらの情報のカテゴリをテーブルと呼びます。テーブルを使用して、共通の要素や目的を含むデータをグループ化します。たとえば、1つのテーブルに氏名や住所を保存し、別のテーブルに受注日、製品番号、単価などの取引に関する詳細情報を保存します。
• 1つのファイルで1つのテーブルを使用する。氏名と住所など、1つのカテゴリに含まれるデータを管理する場合は単一のテーブルを使用します。
• 1つのファイルで複数のテーブルを使用する。顧客、製品、請求書などの複雑なデータを管理する場合は、複数のテーブルを使用します。
• 複数のファイルで複数のテーブルを使用する。複数の異なるデータベースソリューションで同じデータを共有する必要がある場合は、複数のファイルを使用します。たとえば、税率または輸送情報を個別のファイルに保存して、複数のソリューションで使用することができます。同じファイル内のテーブル間で、または外部ファイル内のテーブルとの間でデータを共有するには、リレーションシップを使用します。スクリプトやアクセス権などの他のデータベース要素は、ファイルレベルで保存されるため、一部の複雑なソリューションでは複数のファイルを使用すると便利です。メモ FileMaker Pro は非常に柔軟であるため、多くの場合は、データを単一のファイルに保存するか、それとも複数のファイルに保存するかは、データのまとめ方や利便性の点から決定することができます。テーブルに保存されたデータは、リレーションシップを使用すると、同じファイル内のテーブル間で、または外部ファイル内のテーブルとの間で簡単に共有することができます。詳細は 関連テーブルと関連ファイルの操作を参照してください。スクリプトやアクセス権など他のデータベース要素はファイルレベルで保存されるため、一部の複雑なソルーションでは複数のファイルを使用すると便利です。
5. ヒント レコードの検索とソートを効率的に行うためには、姓と名、敬称(「様」、「殿」、「御中」など)、住所の各項目(郵便番号、県名、都市名)にそれぞれ個別のフィールドを作成します。データ入力時にデータを複数のフィールドに分けて入力すると、将来的にレポートをより簡単に生成することができます。たとえば、個別のフィールドを使用して、各取引の日付、製品番号、数量、および単価といった取引明細を記録すると、週末、月末、または年末に集計レポートおよび小計レポートをより簡単に作成することができます。たとえば、ベーカリービジネスのデータベースには、顧客情報を保存する「顧客」テーブル、製品情報を保存する「製品」テーブル、販売した製品の情報を保存する「品目」テーブル、注文情報を保存する「請求書」テーブルが含まれます。また、テーブル内のフィールドはすべて、そのトピックに関する情報のみを入力するためのフィールドです。たとえば、「顧客」テーブルの1つのレコードのフィールドには、一人の顧客に関する情報がすべて保存されます。同様の理由で、各顧客に固有の識別番号を割り当てます。新しい顧客を追加しない限り、顧客 ID 番号をファイルに入力することはありません。したがって、顧客 ID が存在していれば、その顧客のレコードが存在することになります。「顧客」テーブルには、顧客の名前、住所および電話番号のフィールドも含まれます。「製品」テーブルには、製品識別番号、各製品の単価および在庫数のフィールドが含まれます。「品目」テーブルには、製品および請求書の識別番号、名前、単価、数量および各製品の販売総額のフィールドがあります。「請求書」テーブルには、請求書識別番号、注文日および販売担当者のフィールドがあります。詳細については、リレーションシップの照合フィールドについてを参照してください。
8. それぞれのテーブルで、データを保存するフィールド、および他の関連テーブルからのデータを参照して使用するフィールドを決定します。テーブルに保存されている情報の内容から、データをどこに保存するのが適当か、そしてどこで関連テーブルのデータを使用するかを確認することができます。照合フィールド以外のすべてのフィールドは、データベース内で一度だけ使用します。テーブルの内容に関連していない重複フィールドには、取り消し線を引きます。
9. テーブル間のリレーションシップを決定します。1つのテーブルの照合フィールドと、対応する関連ファイルの照合フィールドを線で結びます。また、リレーションシップによってデータをグループ化することができ、複雑なクエリーを解決することができます。たとえば、リレーションシップを使用して、現在の在庫レベルや売上計画など、複数のテーブルのデータをクエリーする必要がある作業を判断することができます。リレーションシップの詳細については、関連テーブルと関連ファイルの操作を参照してください。
10. 他のユーザとデータベースを共有する必要があるかどうかを判断し、共有する場合には他のユーザがファイルにアクセスする方法を決めます。データベースの共有の詳細については、 ネットワーク上でのデータベースの共有を参照してください。
11. 他のユーザか使用するためにデータベースをデザインする場合、紙の上で計画をユーザに示してレビューし、変更があれば提案してもらいます。
12. 作成したデータベースを誰が使用するのかを考慮して、データベースへのアクセスを制限するかどうかを決定します。データベースを作成する際には、必要に応じてアクセス権を割り当てます。アカウントとアクセス権セットの詳細については、データベースの保護を参照してください。
13. レイアウトを決定し、それぞれの処理に対応する個別のレイアウトをデザインします。レイアウト作成の詳細については、 レイアウトとレポートの作成と管理を参照してください。
14. 必要なファイルとテーブル、それぞれのテーブルのフィールドを一覧表示するフォームを作成します。また、各テーブルのデータに基づいて作成する定型文書やレポートもリストアップしておきます。
15.
16. 他のユーザが使用するためにデータベースをデザインする場合、数人にテストを依頼します。その後、見つかった問題を解決してから、データベースを他のユーザが使用できるようにします。