|
関係論理 (かんけいろんり、関係計算、リレーショナル論理、リレーショナル計算、英: relational calculus) は、関係データベースの関係モデル (リレーショナルモデル) において、宣言的な方法で関係 (リレーション、表、テーブル) として表現されたデータを扱う、コンピュータ科学における演算の体系である。 関係論理には、組関係論理 (タプル関係論理) と定義域関係論理とがある。 関係として表現されたデータに対して行う演算体系としては、関係代数とこの項目で説明する関係論理 (関係計算) の2種類が知られている。 関係論理は宣言的にデータを扱う演算体系であり、関係代数が手続き的にデータを扱うのとは対照的である。 組関係論理と定義域関係論理の表現能力は同等である。 関係論理を実装したデータベース言語 (問い合わせ言語) としては、QUEL や SQL、Tutorial D などが挙げられる。 ただし SQL については、関係論理を完全な形で実装していないとして批判する意見がある。 == 関係モデル == 関係論理は関係モデルに基づく関係データベースのデータベース言語 (問い合わせ言語) であるため、最初に関係モデルを簡単に定義する。 関係は、一つの見出しと0以上の同じ型の組の順序づけられていない集合からなるデータ構造である。 値としての関係を、関係値という。 関係値を値としてもつ変数を関係変数 (relvar) という。 関係変数が値としてもつ関係値は、時間とともに変化する。 関係変数はデータ定義言語 (DDL) を使って定義することができる。 見出しは、特定の属性の順序づけられていない集合である。 関係値を構成する組の集合を本体という。 すなわち関係値は、見出しと本体から構成されている。 組 (タプル) は、0以上の属性の集合からなるデータ構造である。 属性は、属性名と定義域の名称のペアである。 定義域は、データ型と同じ意味と考えてよい。 属性は、その定義域に適合するなんらかの属性値をもつ。 属性値は、スカラ値もしくはより複雑な構造をもつ値である。 関係値を構成するおのおのの組は特定の一つ以上の属性の集合で識別される。 この属性集合を候補キーという。 こうした関係モデルの概念は数学的に定義されるが、既存のデータベースの実装はこうした定義に厳密に準拠しているわけではない。 表 (テーブル) は、関係の視覚的表現として受け容れられている。 組は行の概念に似ている。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「関係論理」の詳細全文を読む 英語版ウィキペディアに対照対訳語「 Relational calculus 」があります。 スポンサード リンク
|