16:07:10)追加された行はこの色です。削除された行はこの色です。リレーション内のタプルはユーザー側がデータを更新したりすることによって、時間の経過と共に変化が起こるが、枠組みであるリレーションそのものは不変である。関係データベース、各行(タプル、レコード)を識別するための項目が必要になり、これを''主キー''と呼ぶ。主キーは単独の項目だけとは限らず、複数の項目を組み合わせて主キーとなることもある。これを''複合キー''と呼ぶこともある。関係データベースの特徴は、複数のテーブルを柔軟に組み合わせて、利用者が必要とする一時的な表を動的に作り出せることにある。そのため、一緒に使うデータ項目を無理に同じテーブルにまとめるのではなく、正規化の操作を行い適切なテーブル構成によって、データベースを構成する。社員のデータをデータベースで管理する場合、氏名や住所などは社員テーブルに持つが、各社員が所属する部課名などは別の部課テーブルなどに分け、必要なときに部課テーブルの内容を参照(結合)するようにするのが一般的である。このとき、社員テーブルには部課テーブルを参照するためのキー項目として、所属部課コードのような項目を持つ。社員テーブルに存在する部課コードの値が、部課テーブルに存在しないと参照できないからである。このとき、テーブル間に整合性がないと困ることになる。したテーブル間の整合性のうち、社員テーブルと部課テーブルのような参照関係にある場合の整合性を、''参照整合性''と呼ぶ。関係データベースのDBMSは、この参照整合性を維持するための機能を持つ。このとき使われるのが、外部キーと参照制約という機能である。''外部キー''とは、他のテーブルを参照するときに使う項目のことである。社員テーブルと部課テーブルの例では、社員テーブルの所属部課コードが外部キーになる。外部キーの値は、参照先テーブルの特定の1行を指さなければならない。よって、参照先のテーブルでは、その値が行を識別できる項目になっている必要がある。した項目は通常主キーになるので、'''外部キーは参照先のテーブルの主キーと同じ値を持つ項目'''と考えてよい(正確にはそうとは言い切れないが、主キー以外の項目である場合はまれなのであまり考慮しなくてよい)。社員テーブルと部課テーブルの参照整合性を維持していくためには、次の2つのルールを守らなければいけない。したルールのことを参照制約という。+部課テーブル中に存在しない所属部課コードを持つレコードを、社員テーブルに追加させない。+社員テーブル中の所属部課コードとして存在する部課コードを持つレコードを、部課テーブルから削除させない。利用者が注意して、このルールを守ればよいが、それは難しい。そこで、可能ならばDBMSにチェックしてくれるとよい。このための指定が外部キーの定義である。テーブルを定義するときに、外部キーを定義しておくと、参照制約が発生し、整合性が維持されるようにDBMSが管理してくれる。最後に、主キーを持つテーブルと外部キーを持つテーブルにおいて、行の追加・削除が自由にできるか否かについてまとめておく。この枠組みを作成する作業がデータベース設計です。リレーショナルデータベースの設計では''正規化''という手法を用いる。この正規化は5段階存在するが、関係データベースでは第三正規化までで十分である。それぞれの正規化された結果を''第一正規形''、''第二正規形''、''第三正規形''と呼ぶ。第三正規形まで施してやっと効率的なリレーショナルデータベースのシステムが完成する。次の条件を満たすものが第一正規形である。-列の値が原子的で分解できない。-繰り返しが含まれない。次の条件を満たすものが第二正規形である。-リレーショナルの主キー以外の全てのキーが主キーに従属している。次の条件を満たすものが第三正規形である。-主キー以外のカラムは直接的に主キーに関連する。place.」(ひとつの事実はひとつの場所に)がある。一言でいえば、正規化とは冗長性を排除して、適切なリレーションを作るということである。リレーションで結ばれたテーブルは、関連する項目を同一フォーム内で表示することができる。めざさスコア+100。