關係演算

關係演算

關係演算是以數理邏輯中的謂詞演算為基礎的。以謂詞演算為基礎的查詢語言稱為關係演算語言。用謂詞演算作為資料庫查詢語言的思想最早見於Kuhns的論文。把謂詞演算用於關係資料庫語(即關係演算的概念)是出E.F.Codd提出來的。

語言ALPHA


元組關係演算以元組變數作為謂詞變元的基本對象。典型的元組關係演算語言是E.F.Codd提出的ALPHA語言,但這一語言並沒有實際實現。現在關係庫管理系統INGRES所用的QUEL語言是參會照ALPHA語言研製的,與ALPHA十分相似
ALPHA語言語句的基本格式是:
操作語句 工作空間名(表達式):操作條件
基本格式中:操作語句主要有GET、PUT、HOLD、UPDATE、DELETEDROP六條語句;工作空間是用戶與系統的通信區,它可以用一個字母表示,通常用W表示;表達式用於指定語句的操作對象,它可以是關係名和屬性名,一條語句可以同時操作多個關係或多個屬性;操作條件是一個邏輯表達式,它用於將操作結果限定在滿足條件的元組中,操作條件可以為空;呆以在基本格式的基礎上加上排序要求,定額要求等。

語言QBE


域關係演算是另一種形式的關係演算。域關係演算以元組變數的分量(即域變數)作為謂詞變元的基本對象。QBE是一個很特色的域關係演算語言,穹由M.MZloof於1975年提出,關於1978年在IBM370上得以實現。QBE是Query By Example(即通過例子進行查詢)的簡稱,它是一種關係語言,同時也指使用此語言的關係資料庫時系統,QBE具有以下特點。
(1)QBE是互動式語言
操作方式非常特別。它是一種高度非過程化的基於屏幕表格的查詢語言,用戶通過終端屏幕編輯旗號斑蝥 以真寫表格的方式構造查詢要求,而查詢結果也是以表格形式顯示,因此具有直觀和可對話的特點。
(2)QBE是表格語言
QBE是在顯示屏幕的表格上進行查詢,所以具有"二維語法"的特點,而其他語言的語法則是線形的。
(3)QBE是基於例子的查詢語言
QBE的意思就是通過例子查詢,它的操作方工對用戶來講容易掌握,特別為缺乏計算機和數學知識的非計算機專業人員樂於接受
QBE中用示例元素來表示查詢結果可能的例子,示例元素實質上就是域變數。

元組關係


在關係運算中,用謂詞公式來表達查詢要求的方式稱為關係演算。元組關係演算是一元組變數作為謂詞變元的基本對象。
元組關係演算語言釋義謂詞公式來定義查詢要求的。在謂詞公式中存在客體變元,這裡稱為元組變數。原子變數是一個變數,其變化範圍為某一個命名的關係。