數(shù)據(jù)庫系統(tǒng)2-1:關(guān)系模型及其描述

字號(hào):

關(guān)系數(shù)據(jù)庫以其堅(jiān)實(shí)的數(shù)學(xué)理論基礎(chǔ)、嚴(yán)密的邏輯結(jié)構(gòu)和簡(jiǎn)單明了的表示方式深得廣大用戶的青睞,目前已經(jīng)占據(jù)數(shù)據(jù)庫系統(tǒng)的市場(chǎng),成為應(yīng)用最為廣泛的數(shù)據(jù)處理工具。
     數(shù)據(jù)模型主要描述兩類信息:一是實(shí)體;二是實(shí)體之間的聯(lián)系。在層次、網(wǎng)狀模型中,實(shí)體之間的聯(lián)系是通過指針來實(shí)現(xiàn)的,而在關(guān)系模型中,實(shí)體之間的聯(lián)系是通過二維表中公共屬性值建立起來的聯(lián)系來實(shí)現(xiàn)的。
    關(guān)系數(shù)據(jù)庫系統(tǒng)是支持關(guān)系數(shù)據(jù)模型的數(shù)據(jù)庫系統(tǒng),即以關(guān)系模型為基礎(chǔ)而構(gòu)建起來的數(shù)據(jù)庫系統(tǒng)。關(guān)系數(shù)據(jù)模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和關(guān)系完整性約束三部分組成。
    1. 關(guān)系數(shù)據(jù)結(jié)構(gòu)
    在關(guān)系模型中,現(xiàn)實(shí)世界中的實(shí)體和實(shí)體之間的聯(lián)系都用單一的關(guān)系來描述,這些關(guān)系的邏輯結(jié)構(gòu)非常簡(jiǎn)單,就象人們?nèi)粘K煜さ亩S表。
    2. 關(guān)系操作
    關(guān)系模型是集合操作方式,操作對(duì)象和結(jié)果都是集合,稱為“一次一集合”。
    關(guān)系操作有三種不同的描述方式:關(guān)系代數(shù)、關(guān)系演算和結(jié)構(gòu)化查詢語言SQL。
    關(guān)系代數(shù)是一種抽象的查詢語言,它是用集合論中的關(guān)系運(yùn)算來表達(dá)查詢要求的方式。關(guān)系演算是以數(shù)理邏輯中的謂詞演算來表達(dá)查詢要求的方式,它又可分為元組關(guān)系演算和域關(guān)系演算。若在關(guān)系演算中,謂詞變?cè)幕緦?duì)象是元組變量,則稱之為元組關(guān)系演算;若謂詞變?cè)幕緦?duì)象是域變量,則稱之為域關(guān)系演算。
    SQL是介于關(guān)系代數(shù)和關(guān)系演算之間的查詢語言。這種語言除具有數(shù)據(jù)查詢功能之外,還具有數(shù)據(jù)定義DDL和數(shù)據(jù)控制DCL等功能,是集數(shù)據(jù)查詢、數(shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)控制于一體的關(guān)系數(shù)據(jù)語言。是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言。
    3. 關(guān)系的完整性約束
    數(shù)據(jù)的完整性約束是指在給定的數(shù)據(jù)模型中,數(shù)據(jù)及其聯(lián)系所遵守的一組通用的完整性規(guī)則,以確保數(shù)據(jù)庫中數(shù)據(jù)的一致性和正確性。在關(guān)系模型中允許定義三類完整性約束:實(shí)體完整性、參照完整性和用戶自定義完整性。