国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

數據庫學習筆記(四)

2024-07-21 02:08:28
字體:
來源:轉載
供稿:網友
國內最大的酷站演示中心!

關系數據庫

六, 關系代數

關系代數是一種抽象的查詢語言,是關系數據操縱語言的一種傳統表達方式,它是用對關系的運算來表達查詢的。

1,傳統的集合運算

并(union),差(difference),交(intersection),廣義笛卡兒(extended cartesian product)

      2,專門的關系運算

規定的幾個記號。

⑴ 設關系模式為r(a1,a2, …,an)。它的一個關系設為r。t∈r表示t是r的一個元組。t[ai]則表示元組t中相應于屬性ai上的一個分量。

⑵ 若a={ai1,ai2, …,aik},其中ai1,ai2, …,aik是a1,a2, …,an中的一部分,則a稱為屬性列或域列。t[a]=(t[ai1],t[ai2],…,t[aik])表示元組t在屬性列a上諸分量的集合。則表示(a1,a2, …,an)中去掉{ai1,ai2, …,aik}后剩余的屬性組。

⑶ r為n目關系,s為m目關系。tr∈r,ts∈s,tr ts稱為元組的連接。它是一個n+m列的元組,前n個分量為r中的一個n元組,后m個分量為s中的一個m元組。

⑷ 給定一個關系r(x,z),x和z為屬性組。定義當t[x]=x時,x在r中的象集為:

zx={t[z] | t∈r,t[x]=x}

3,下面給出關系運算的定義:

1.選擇(selection)

σf(r)={ t | t∈r∧f(t)=’真’}

從關系r中選取使邏輯表達式f為真的元組。這是從行的角度進行的運算。

2.投影(projection)

關系r上的投影使從r中選擇出若干屬性列組成新的關系。記做:

πa(r)={ t[a] | t∈r }

投影之后不僅取消了原關系中的某些列,而且還可能取消某些元組,因為取消了某些屬性列后,就可能出現重復行,應取消這些完全相同的行。

3.連接(join)

連接也稱為 連接。它是從兩個關系的笛卡兒積中選取屬性間滿足一定條件的元組。

            連接運算中由兩種常用的連接,一種是等值連接,一種是自然連接。

1,為“=”的連接運算稱為等值連接。它是從關系r與s的廣義笛卡兒積中選取a,b屬性值相等的那些元組,集等值連接為:

2,自然連接是一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的屬性組,并且在結果中把重復的屬性列去掉。

4.除(division)

給定關系r(x,y)和s(y,z),其中x,y,z為屬性組。r中的y與s中的y可以有不同的屬性名,但必須出自相同的域集。r與s的除運算得到一個新的關系p(x),p是r中滿足下列條件的元組在x屬性列上的投影,元組在x上分量值x的象集yx包含s在y上投影的集合。除操作是同時從行和列的角度進行運算。

七,關系演算

1,  元素關系演算語言alpha:

alpha語言主要有get、put、hold、update、delete、drop六條語句,語句的基本格式是:
操作語句  工作空間名(表達式): 操作條件
表達式用于指定語句的操作對象,它可以是關系名或屬性名,一條語句可以同時操作多個關系或多個屬性。操作條件是一個邏輯表達式,用于將操作對象限定在滿足條件的元組中,操作條件可以為空。

1,  get檢索操作

2,  update更新操作,步驟如下:

·首先用hold語句將要修改的元組從數據庫中讀到工作空間中
·然后用宿主語言修改工作空間中元組的屬性
·最后用update語句將修改后的元組送回數據庫中

3,  put插入操作,步驟如下:

    ·首先用宿主語言在工作空間中建立新元組
·然后用put語句把該元組存入指定的關系中

4,  hold帶著并發控制的get語句

5,  delete刪除操作

    ·用hold語句把要刪除的元組從數據庫中讀到工作空間中
·用delete語句刪除該元組

2,  域關系演算qbe(query  by  example)

    最突出的特點是它的操作方式。它是一種高度非過程化的基于屏幕表格的查詢語言,用戶通過終端屏幕編輯程序以填寫表格的方式構造查詢要求,而查詢結果也是以表格形式顯示,因此非常直觀,易學易用。

八,關系數據庫管理系統:

關系數據庫管理系統簡稱為關系系統,是指支持關系模型的系統。一個數據庫管理系統可定義為關系系統,當且僅當它至少支持:

1,  關系數據庫(即關系數據結構)。也就是說,從用戶觀點看,數據庫是由表構成的,并且系統中只有表這種結構。

2,  支持選擇、投影和(自然)連接運算。對這些運算不要求用戶定義任何物理存取路徑。

按照e.f.codd的思想,依據關系系統支持關系模型的程度不同,可以把關系系統分為四類:

       1,表式系統。

        這類系統僅支持關系數據結構(即表),不支持集合級的操作。表式系統實際上不能算關系系統。倒排表列(inverted list)系統就屬于這一類。

        2,(最小)關系系統。

  即上面定義的關系系統,它支持關系數據結構和選擇、投影、連接三種關系操作。許多微機關系系統如foxbase、foxpro等就屬于這一類。

        3,關系上完備的系統。

            這類系統支持關系數據結構和所有的關系代數操作(功能上與關系代數等價)。目前許多中大型關系系統如db2、 oracle等就屬于這一類。

        4,全關系系統。

            這類系統支持關系模型的所有特征,特別是數據結構中域的概念,實體完整性和參照完整性。雖然db2、 oracle等系統已經接近這個目標,但到目前為止尚沒有一個系統是全關系系統。

           

盡管不同的關系系統對關系模型的支持程度不同,但它們的體系結構都符合三級模式結構,提供了模式、外模式、內模式以及模式與外模式之間的映象、模式與內模式之間的映象。表就是關系系統的模式,在表上面可以定義視圖,這就是關系系統的外模式,關系系統通常都提供了定義視圖即外模式的語句。內模式則是實際存儲在磁盤或磁帶上的文件。

   未完待續。

 

小康

[email protected]

2004-2-29
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 昭平县| 改则县| 宜君县| 巴林左旗| 平舆县| 津南区| 庆元县| 时尚| 富阳市| 尖扎县| 石屏县| 房产| 临漳县| 高陵县| 焉耆| 安新县| 高邑县| 施甸县| 隆安县| 永春县| 高雄市| 渑池县| 法库县| 台山市| 凉山| 临泉县| 丰都县| 双城市| 汝阳县| 阳山县| 丽江市| 凤山市| 云安县| 莆田市| 清镇市| 星子县| 修武县| 铁岭市| 佛山市| 岱山县| 平和县|