リレーションシップの使用 (Visual Database Tools)

テーブル間にリレーションシップを作成すると、あるテーブルの列と別のテーブルの列がどのようにリンクしているかを示すことができます。

リレーショナル データベースでは、リレーションシップを使用することで、冗長データの発生を防ぐことができます。たとえば、書籍についての情報を追跡するデータベースをデザインする場合に、個々の本について書名、発行日、出版社などの情報を格納する titles という名前のテーブルを作成するとします。出版社については、電話番号、住所、郵便番号などの情報も記録する必要があると考えるかもしれません。このような情報をすべて titles テーブルに格納すると、出版社の電話番号は、その出版社が発行した書名ごとに重複することになります。

この問題を解決するには、publishers というテーブルを別に作成し、出版社の情報はこのテーブルに 1 回だけ格納します。そして、出版社のテーブルのエントリを参照するポインタを titles テーブルに設定します。

titles テーブルと publishers テーブルの間に参照整合性を適用することで、確実にデータの同期をとることができます。参照整合性のリレーションシップは、あるテーブルの情報と他のテーブルの情報が一致していることを保証するのに役立ちます。たとえば、titles テーブルの各書名は、publishers テーブルの特定の出版社と関係付けられている必要があります。データベースに存在しない出版社で、書名をデータベースに追加することはできません。

注意

テーブルをレプリケーション用に発行する場合は、Transact-SQL ステートメント ALTER TABLE または SQL Server 管理オブジェクト (SMO) を使用して、スキーマを変更する必要があります。テーブル デザイナまたはデータベース ダイアグラム デザイナを使用してスキーマを変更すると、テーブルの削除と再作成が試行されます。発行済みのオブジェクトを削除することはできないので、スキーマの変更は失敗します。

リレーションシップの使用方法の詳細については、次の各トピックを参照してください。

このセクションの内容

参照