首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級 | 職稱英語 | 商務(wù)英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學(xué)習(xí) | 法語 | 德語 | 韓語
計算機(jī)等級考試 | 軟件水平考試 | 職稱計算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會計從業(yè)資格考試會計證) | 經(jīng)濟(jì)師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務(wù)師
注冊資產(chǎn)評估師 | 高級會計師 | ACCA | 統(tǒng)計師 | 精算師 | 理財規(guī)劃師 | 國際內(nèi)審師
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價師 | 土地估價師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評價師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
繽紛校園 | 實(shí)用文檔 | 英語學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

2011年計算機(jī)等考四級數(shù)據(jù)庫工程師復(fù)習(xí)資料(5)

考試吧整理“2011年計算機(jī)等級四級數(shù)據(jù)庫工程師復(fù)習(xí)資料(5)”,方便考生備考!

  五、關(guān)系數(shù)據(jù)庫

  1.表格

  表格(或簡稱表)表示了用戶的特定類型(Type)的一些實(shí)體。表頭由一些屬性名(Attribute Name)組成,每個屬性名對應(yīng)于一列。在表上屬性名必須唯一,不允許重名。表體是由一些行或元組(tuple)、或記錄(record)組成。一個元組對應(yīng)于傳統(tǒng)的文件結(jié)構(gòu)中的一個記錄,一個記錄含有若干個域(field)用以存儲屬性值(Attribute value)。一個元組對應(yīng)于一個“用戶”實(shí)體的出現(xiàn)(occurrence)。表體中每一行和某一列的交叉點(diǎn)(相當(dāng)于記錄中的域)上保存一個屬性值。這個屬性值叫做這一行(或這個實(shí)體出現(xiàn))的相應(yīng)屬性值。表體中每一列可以保存的值對應(yīng)于某種屬性類型(Type of Attribute),也就是說,這一列的屬性值只能取這個屬性類型的值。某個屬性所能取的所有值的集合叫做這個屬性的值域(Domain of Attribute)。類型和值域的對應(yīng)關(guān)系是一對多的。一個類型有一個值域,但一個值域可以作為多個類型,基名稱不同,但實(shí)質(zhì)上值域一樣。實(shí)際上,類型是對值域的命名。能唯一標(biāo)識一個元組的屬性稱之為關(guān)鍵屬性(Primary Key Attribute)或簡稱為主關(guān)鍵字(Primary Key)。主關(guān)鍵字有時是由多個屬性組成的,此時的主關(guān)鍵字叫做組合關(guān)鍵字(Conˉcatenated primary Key)。有的時候,表中必須由一些組合的主關(guān)鍵字才能唯一地標(biāo)識一個元組,也就是說,不存在能作關(guān)鍵字的一個屬性。這時為了方便,往往引入一個附加的屬性并稱之為外來關(guān)鍵字(Foreigh Key)來作主關(guān)鍵字。外來關(guān)鍵字為以后檢索和查詢帶來了方便,但也增加了信息冗余。

  2.表名、表頭和表體

  表名、表頭和表體在關(guān)系模型中具有不同的作用或功能,因而也具有完全不同的性質(zhì)。表頭是一個屬性的集合,它規(guī)定了表的結(jié)構(gòu)。表體是一個特殊的集體,稱作為關(guān)系(relation)。“關(guān)系模型”中的“關(guān)系”一詞就是指表體中的這個數(shù)學(xué)關(guān)系。在關(guān)系數(shù)據(jù)庫中,表名對應(yīng)于數(shù)據(jù)庫名(或關(guān)系名),表頭對應(yīng)于數(shù)據(jù)描述(或結(jié)構(gòu)描述),表體對應(yīng)于數(shù)據(jù)庫。表體是數(shù)據(jù)庫的內(nèi)容及數(shù)據(jù)庫操作的對象。另外,有兩個概念必須加以強(qiáng)調(diào):型(type)和值或出現(xiàn)(occurence)。表頭定義了實(shí)體(或元組)的型,也就是說規(guī)定了實(shí)體(或元組)的值域。而表體則給出了實(shí)體(或元組)的出現(xiàn)。出現(xiàn)是型中的一個值。

  3.關(guān)系的數(shù)學(xué)定義

  關(guān)系模型是建立在集合論(Set Theory)的基礎(chǔ)之上的,F(xiàn)在,開始用集合論的術(shù)語來嚴(yán)格地定義數(shù)學(xué)上的關(guān)系,即給出關(guān)系的數(shù)學(xué)定義。定義1 域(Domain)是值(value)的集合。

  4.關(guān)系模型

  關(guān)系模型由三部分組成:數(shù)據(jù)結(jié)構(gòu)(即關(guān)系)、關(guān)系操作、關(guān)系的完整性。下面將對這三個部分進(jìn)行分別的討論。(1)單一的數(shù)據(jù)結(jié)構(gòu)———關(guān)系 在關(guān)系模型中,無論是實(shí)體還是實(shí)體之間的聯(lián)系均由單一的類型結(jié)構(gòu)—關(guān)系來表示。在前面,已給出了關(guān)系和域的數(shù)學(xué)定義,介紹了n元關(guān)系、元組和屬性等概念。下面介紹關(guān)鍵字、關(guān)系模式和關(guān)系數(shù)據(jù)庫等一些基本概念。關(guān)鍵字 關(guān)系中的某一組屬性,若其值可以唯一地標(biāo)識一個元組,則稱該屬性組為一個候選關(guān)鍵字(Candidate Key)。若一個關(guān)系有多個候選關(guān)鍵字,則可以任選其中一個作為主關(guān)鍵字(Primary Key)。主關(guān)鍵字中的諸屬性被稱為主屬性。關(guān)系模式 關(guān)系的描述稱為關(guān)系模式。它包括:關(guān)系名、組成關(guān)系的諸屬性名、屬性到域的映象、屬性間的數(shù)據(jù)依賴關(guān)系等等。所以,關(guān)系模式由關(guān)系名、諸屬性名和屬性到域的映象三個部分組成,關(guān)系模式通常簡記為R(A 1 ,A 2 ,…,A n ),其中R是關(guān)系名,A 1 ,A 2 ,…,A n 為諸屬性名。屬性到域的映象一般通過指定屬性的類型和長度來說明。某個關(guān)系模式在某一時刻所具有的狀態(tài)是指關(guān)系的外延,即元組的集合。關(guān)系的外延內(nèi)容有時簡稱為關(guān)系。但關(guān)系模式和關(guān)系的內(nèi)容有時也統(tǒng)稱為關(guān)系。讀者可以從上下文中區(qū)別其確切的含義。形象地說,關(guān)系模式是關(guān)于表名和表頭的描述,而關(guān)系的內(nèi)容是表體。關(guān)系數(shù)據(jù)庫 在關(guān)系數(shù)據(jù)庫中,要分清型和值兩個基本概念。關(guān)系數(shù)據(jù)庫的型是指數(shù)據(jù)庫的結(jié)構(gòu)描述,它包括關(guān)系數(shù)據(jù)庫名、若干屬性的定義,以及這些屬性上的若干關(guān)系關(guān)系模式。亦稱為數(shù)據(jù)庫的內(nèi)涵(Intension),數(shù)據(jù)庫的值亦稱為數(shù)據(jù)庫的外延。在關(guān)系數(shù)據(jù)庫中,內(nèi)涵是比較穩(wěn)定的,它規(guī)定了外延的取值范圍。而外延卻是隨時間變化的。這和在一般的形式邏輯中外延和內(nèi)涵一一對應(yīng)有所區(qū)別。此處外延是指任意一個滿足內(nèi)涵的集合,而不一定恒指滿足內(nèi)涵的最大的一個集合。關(guān)系模式(即內(nèi)涵)是穩(wěn)定的;而關(guān)系的內(nèi)容,即外延,卻是隨時間動態(tài)的變化而變化的。數(shù)據(jù)庫的結(jié)構(gòu)(即模式)是穩(wěn)定的;而數(shù)據(jù)庫中的數(shù)據(jù)內(nèi)容卻在不斷地更新。

  (2)關(guān)系操作 關(guān)系模型規(guī)定了關(guān)系操作的功能和特點(diǎn),但不對DBMS語言的語法做出具體的規(guī)定。關(guān)系數(shù)據(jù)庫語言的主要特點(diǎn)(或優(yōu)點(diǎn))是其高度的非過程化(Non-procedureae)或者說明性(declarative)。關(guān)系數(shù)據(jù)庫語言的語句是透明的。用戶只須知道語句做什么,而不須知道怎么做的。Codd在其早期的文章中,引入了8種基本的操作:并(Union)交(Intersection)差(Difference)笛卡爾乘積(Cartesian Product)限制(Restrictions)投影(Projection)連接(Join)除(Division)這些操作都是對關(guān)系的內(nèi)容或表體實(shí)施操作的,得到的結(jié)果仍為關(guān)系。注意,這些操作只是基本的操作,而不是不再可分的原始(Primitive)操作,例如,Join,Intersection和Division可以由其它五種操作合成。但是,把它們?nèi)齻也作為基本操作使用起來很方便。另外,Codd并沒說上述8種操作就是關(guān)系數(shù)據(jù)庫只能有的8種操作。實(shí)際上,上述8種操作僅僅是作為最小的DML操作的基礎(chǔ)部分,并且也還未考慮到DDL的需求。SQL支持的操作多于上述8種DML操作,而且SQL還支持DDL操作。關(guān)系操作的特點(diǎn)是集合操作,即操作的對象和結(jié)果都是集合。這種操作方式也稱為一次一集合(set-at-a-time)方式。而非關(guān)系模型的數(shù)據(jù)庫的操作方式則為一次一記錄(record-at-a-time)方式。關(guān)系操作可以用兩種方式來表示:

 、俅鷶(shù)方式,即關(guān)系代數(shù)

 、谶壿嫹绞,即關(guān)系演算而關(guān)系演算又進(jìn)一步分為元組關(guān)系演算和域關(guān)系演算。已經(jīng)證明,這些表示方式在功能上是相互等價的。一般選其一即可。

  (3)關(guān)系模型的三類完整性 關(guān)系模型的三類完整性是:

  ①實(shí)體完整性(Entity Integrity)

  ②參照完整性(Referential Integrity)

 、塾脩舳x的完整性(User Defined Integrity)其中,實(shí)體完整性和參照完整性是任何關(guān)系模型都必須滿足的完整性約束條件,應(yīng)該由關(guān)系數(shù)據(jù)庫DBMS自動支持。而用戶定義的完整性的支持是由DBMS提供完整性定義設(shè)施(或機(jī)制),可以隨DBMS商品軟件不同而有所變化。實(shí)體完整性是指:若屬性A是基本關(guān)系R的主關(guān)鍵字的屬性(即主屬性),則屬性A不能取空值(NULL)。在關(guān)系數(shù)據(jù)庫中有各種關(guān)系,如基本關(guān)系(常稱為基本表)、查詢表、視圖表等等。基本表是指實(shí)際存在的表,它是實(shí)際存儲數(shù)據(jù)的邏輯表示。查詢表是指和查詢結(jié)果相對應(yīng)的表。而視圖表是由基本表或視圖表導(dǎo)出的表,是虛表,不對應(yīng)實(shí)際存儲的數(shù)據(jù)。實(shí)體完整性是針對基本關(guān)系的?罩凳侵浮安恢馈被蛘摺盁o意義的”或“不屬于定義域”值?罩狄浴癗ULL”表示。對于實(shí)體完整性作如下說明:

  (1)一個基本關(guān)系通常對應(yīng)于現(xiàn)實(shí)世界中的一個實(shí)體集。例如學(xué)生關(guān)系對應(yīng)于學(xué)生實(shí)體集。基本關(guān)系不是由其它關(guān)系生成的關(guān)系。基本關(guān)系是本原(Primitive),是定義復(fù)雜關(guān)系的出發(fā)點(diǎn)。

  (2)現(xiàn)實(shí)世界中的實(shí)體是可區(qū)分的,即實(shí)體具有某種唯一性的標(biāo)識。

  (3)在關(guān)系模型中由主關(guān)鍵字作為滿足唯一性的標(biāo)識。

  (4)主關(guān)鍵字中屬性不能取空值。因?yàn)槿糁麝P(guān)鍵字中某屬性取空值,則意味著某個實(shí)體不可標(biāo)識;而這和(2)相矛盾。參照完整性是指:若基本關(guān)系R中含有另一個基本關(guān)系S的主關(guān)鍵字K S 所對應(yīng)的屬性組F(F稱為R的外部關(guān)鍵字(external keys)),則在關(guān)系R中的每個元組中的F上的值必須滿足:

 、倩蛘呷】罩(即F中的每個屬性的值均為空值);

  ②或等于S中某個元組的主關(guān)鍵字的值;娟P(guān)系R和S不一定是不同的關(guān)系。外部關(guān)鍵字也稱為外來關(guān)鍵字。例如,某數(shù)據(jù)庫中有職工關(guān)系EMP(職工號,姓名,部門號)和部門關(guān)系DEPT(部門號,部門名稱)為兩個基本關(guān)系。關(guān)系EMP的主關(guān)鍵字為“職工號”,DEPT的主關(guān)鍵字為“部門號”在EMP中,“部門號”是EMP的外部關(guān)鍵字。故此,在EMP中的每個元組中“部門號”的值只有兩種可能性:

 、偃】罩。這說明這個職工尚未分到某個部門;

 、诨蛉》强罩。這時“部門號”的值必須是DEPT中某個元組中的“部門號”的值。這說明一個職工不可能被分配到一個不存在的部門。也就是說,被參照的關(guān)系DEPT中一定存在一個元組,該元組的關(guān)鍵字的值等于EMP中某元組的外部關(guān)鍵字的值。實(shí)體完整性和參照完整性是針對任何關(guān)系數(shù)據(jù)庫系統(tǒng)的所有數(shù)據(jù)庫的一般性原則。用戶定義的完整性針對某一具體的數(shù)據(jù)庫的約束條件。條件是由現(xiàn)實(shí)世界中的應(yīng)用環(huán)境決定的。它涉及到某一具體的應(yīng)用中的數(shù)據(jù)所必須滿足的語義要求。關(guān)型模型的DBMS應(yīng)提供定義和檢驗(yàn)這類完整性條件的機(jī)制,以使用統(tǒng)一的方法來自動地處理它們而不要求應(yīng)用程序員來承擔(dān)這一功能。

  5.關(guān)系數(shù)據(jù)庫語言概述

  關(guān)系數(shù)據(jù)庫語言分三類:數(shù)據(jù)描述語言DDL,數(shù)據(jù)操縱語言DML和數(shù)據(jù)控制語言DCL。其中,DDL負(fù)責(zé)數(shù)據(jù)庫的描述,提供一種數(shù)據(jù)描述機(jī)制,用來描述數(shù)據(jù)庫的特征或數(shù)據(jù)的邏輯結(jié)構(gòu)。DML負(fù)責(zé)數(shù)據(jù)庫的操作,提供一種處理數(shù)據(jù)庫操作的機(jī)制。DCL負(fù)責(zé)控制數(shù)據(jù)庫的完整性和安全性,提供一種檢驗(yàn)完整性和保證安全的機(jī)制。DML是用戶經(jīng)常使用的語言,包括了DBMS的主要功能。DML包括數(shù)據(jù)查詢和數(shù)據(jù)的增、刪、改等功能。其中查詢的表達(dá)方式是DML的主要部分。關(guān)系數(shù)據(jù)庫的DML按照查詢方式可以分為兩大類:

  (1)用對關(guān)系的集合代數(shù)運(yùn)算來表示查詢的方式,稱為關(guān)系代數(shù)(Relational Algebra)。

  (2)用謂詞演算來表達(dá)查詢的方式,稱為關(guān)系演算(Relational Calculus)。關(guān)系演算又可按謂詞變元的基本對象是元組變量(tuple variable)還是域變量(domain variable)分為元組關(guān)系演算和域關(guān)系演算兩種。關(guān)系代數(shù)和兩種關(guān)系演算均是抽象的查詢語言,這些抽象的查詢語言和實(shí)際的DBMS軟件產(chǎn)品中實(shí)現(xiàn)的具體的查詢語言并不完全一樣。但它們是DBMS中查詢語言的理論基礎(chǔ)。關(guān)系代數(shù)、元組關(guān)系演算和域關(guān)系演算這三種語言在表達(dá)能力上是彼此相互等價的,它們均可以作為評價實(shí)際DBMS軟件產(chǎn)品中查詢語言能力的標(biāo)準(zhǔn)。實(shí)際DBMS軟件產(chǎn)品的查詢語言,除了提供關(guān)系代數(shù)(或一種關(guān)系演算)之外,還提供了許多附加的功能,如庫函數(shù)、算術(shù)運(yùn)算等功能。SQL是介于關(guān)系代數(shù),和關(guān)系演算之間的一種語言。SQL不僅具有豐富的查詢功能,而且還具有數(shù)據(jù)庫定義和數(shù)據(jù)庫控制功能。SQL是集DDL、DML、DCL為一體的標(biāo)準(zhǔn)的關(guān)系數(shù)據(jù)庫語言。SQL充分體現(xiàn)了關(guān)系數(shù)據(jù)庫語言的優(yōu)點(diǎn)。

  6.關(guān)系代數(shù)

  關(guān)系代數(shù)中的運(yùn)算可以分為兩類:

  (1)傳統(tǒng)的集合運(yùn)算,如并、交、差、笛卡爾乘積等。這類運(yùn)算是從關(guān)系的“水平方向(即按行)”來進(jìn)行的。

  (2)專門的關(guān)系運(yùn)算,如選擇、投影、連接、除。這類運(yùn)算不僅涉及到行而且也涉及到列。

  7.關(guān)系演算

  關(guān)系演算是以數(shù)理邏輯中的謂詞演算為基礎(chǔ)的。用謂詞演算作為關(guān)系數(shù)據(jù)庫的語言并提出關(guān)系演算的是E.F.Codd。Codd首先定義了關(guān)系演算語言ALPHA。但ALPHA并沒有在計算機(jī)上實(shí)現(xiàn)。但關(guān)系數(shù)據(jù)庫管理系統(tǒng)INGRES所用的QUEL語言是參考ALPHA研制的,與ALPHA十分類似。

文章搜索
計算機(jī)等級考試欄目導(dǎo)航
版權(quán)聲明:如果計算機(jī)等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本計算機(jī)等級考試網(wǎng)內(nèi)容,請注明出處。