Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere 11 - 紹介 » SQL Anywhere 11 の概要 » データ管理テクノロジの概要 » リレーショナル・データベースの概念 » テーブル間の関係

 

プライマリ・キー

リレーショナル・データベース内の各テーブルには、「プライマリ・キー」が必要です。プライマリ・キーとは 1 つのカラム、またはカラムのセットで、各ローをユニークに識別します。1 つのテーブル内で、2 つのローが同じプライマリ・キーの値を持つことはできません。

SQL Anywhere サンプル・データベース (samples-dir\demo.db) では、Employees テーブルに従業員の個人情報が格納されています。このテーブルにはプライマリ・キー・カラム EmployeeID があり、各従業員に割り当てられたユニークな ID 番号が入っています。ID 番号が入っている単一のカラムにプライマリ・キーを割り当てるのが一般的な方法です。名前やその他の識別子は、必ずしもユニークではないため、ID 番号の方が適しています。

SQL Anywhere サンプル・データベースの SalesOrderItems テーブルのプライマリ・キーは、より複雑です。このテーブルには、会社からの注文に含まれる個々の項目に関する情報が入っており、次のカラムで構成されています。

  • ID   その注文項目が含まれている注文を識別する注文番号

  • LineID   注文内での注文項目を識別する行番号

  • ProductID   受注した製品を識別する製品 ID

  • Quantity   受注した項目の数量

  • ShipDate   受注品が出荷された日付

特定の注文項目はその注文項目が含まれている注文番号と、注文内での行番号によって識別されます。この 2 つの番号は、ID カラムと LineID カラムに格納されています。注文項目が同一の ID 値を共有する場合 (1 回の注文に複数の注文項目がある場合) と、注文項目が同一の LineID 番号を共有する場合 (各注文における最初の注文項目はすべて LineID が 1) があります。どの注文項目も、これら 2 つの値を共有することはないので、プライマリ・キーは 2 つのカラムで構成されています。