數(shù)據(jù)庫筆記(基本概念)

筆記內(nèi)容參考自《Database System Concept 6th Edition》(數(shù)據(jù)庫系統(tǒng)概念 第六版)

數(shù)據(jù)庫筆記(數(shù)據(jù)基本概念)

1. 數(shù)據(jù)抽象(Data Abstract)

數(shù)據(jù)抽象分為三種不同的抽象,它們分別是:

  • 物理層級(Physical Level):最底層的數(shù)據(jù)抽象,該級別的抽象描述數(shù)據(jù)是如何實際被存儲的。
  • 邏輯層級(Logical Level):該層抽象描述了什么數(shù)據(jù)被存儲以及這些數(shù)據(jù)之間的關(guān)系扯键。它包含了少許簡單的關(guān)系性結(jié)構(gòu)掠廓,但外部用戶無需了解該結(jié)構(gòu)再愈。
  • 視圖層級(View Level):最高層的抽象缰泡,它簡化了邏輯層級,用于與用戶進行交流明肮。同一個數(shù)據(jù)庫可以有多個視圖層級。

2. 實例(Instance)

數(shù)據(jù)庫實例是數(shù)據(jù)庫在特定事件中存儲的數(shù)據(jù)集合缭付。


3. 模式(Schema)

數(shù)據(jù)庫的模式是數(shù)據(jù)庫的總體設(shè)計柿估,以數(shù)據(jù)抽象作為分類,數(shù)據(jù)庫模式可分為:物理模式(Physical Schema)陷猫、邏輯模式(Logical Schema)秫舌、子模式(Subschemas)。這三種模式對應(yīng)的數(shù)據(jù)抽象層級分別為物理層級绣檬、邏輯層級足陨、視圖層級。


4. 數(shù)據(jù)模型(Data Model)

數(shù)據(jù)模型是一系列用于描述數(shù)據(jù)概念工具娇未,包括數(shù)據(jù)關(guān)系墨缘、數(shù)據(jù)語意和一致性約束。數(shù)據(jù)模型提供一種描述物理層級忘蟹、邏輯層級飒房、視圖層級的數(shù)據(jù)庫設(shè)計的方法。數(shù)據(jù)模型主要有一下幾種:

  • 關(guān)系數(shù)據(jù)模型(Relational Data Model):該模型使用一系列表格來描述數(shù)據(jù)媚值,每一個表格都有數(shù)個唯一表示的列狠毯。這些表格被稱為關(guān)系(Relation)。大多數(shù)的數(shù)據(jù)庫系統(tǒng)都是基于關(guān)系模型褥芒。
  • 實體關(guān)系數(shù)據(jù)模型(Entity-Relationship Data Model):簡稱E-R模型嚼松。該模型通過描述現(xiàn)實中的實體對象及其關(guān)系來描述數(shù)據(jù)嫡良。該模型多用于數(shù)據(jù)庫的設(shè)計。
  • 基于對象的數(shù)據(jù)模型(Object-Based Data Model):面向?qū)ο缶幊陶Z言的流行導(dǎo)致該數(shù)據(jù)模型的出現(xiàn)献酗。它可被視為E-R模型加以面向?qū)ο筇匦缘臄?shù)據(jù)模型寝受。
  • 半結(jié)構(gòu)化數(shù)據(jù)模型(Semistructured Data Model):該模型與關(guān)系數(shù)據(jù)模型不同,它允許同類數(shù)據(jù)擁有不同的屬性罕偎。其典型應(yīng)用就是XML(Extensible Markup Language)很澄。

5. 數(shù)據(jù)操縱語言(Data-Manipulation Language)

數(shù)據(jù)操縱語言(DML)是一種允許用戶在一種適當?shù)臄?shù)據(jù)模型的組織下訪問并操縱數(shù)據(jù)的語言。訪問的操作包括以下內(nèi)容:

  • 數(shù)據(jù)庫存儲的信息的查詢
  • 新的數(shù)據(jù)庫信息的插入
  • 刪除數(shù)據(jù)庫信息
  • 數(shù)據(jù)庫存儲信息的修改

這些操作可以大致分為兩類:

  • 過程化DML(Procedual DML):它要求用戶描述獲取什么數(shù)據(jù)和怎樣獲取這些數(shù)據(jù)颜及。
  • 聲明性DML(Declarative DML):又稱非過程化DML甩苛,與過程化DML一樣,它要求用戶描述獲取什么數(shù)據(jù)但它不要求描述其獲取方式俏站。

請求獲取數(shù)據(jù)庫信息的語句被稱為查詢(Query)讯蒲,一些包含信息查詢操作的DDL被稱為查詢語言(Query Language)。雖然有一些不正確肄扎,一般來說DML和查詢語言可被視為同義詞墨林。


6. 數(shù)據(jù)定義語言(Data-definition Language)

使用一組定義語句來確定數(shù)據(jù)庫模式的語言被稱為數(shù)據(jù)定義語言(DDL)。其中一種特殊的用于確定存儲結(jié)構(gòu)以及訪問方法的DDL被稱為數(shù)據(jù)存儲與定義語言(Data Storage and Definition Language)犯祠。它定義了數(shù)據(jù)庫模式的實現(xiàn)細節(jié)旭等,但它一般是隱藏的,不被用戶所看見的雷则。

在定義數(shù)據(jù)時辆雾,必須同時定義數(shù)據(jù)的一致性約束(Consistency Constrain)。存儲的數(shù)據(jù)必須滿足定義的一致性約束月劈。一致性約束分為以下幾類:

  • 域約束(Domain Constraints):域約束要求存儲的信息的屬性的值必須是約束定義的數(shù)據(jù)類型的值度迂。域約束是最主要的完整性約束,每當新的數(shù)據(jù)項被添加進數(shù)據(jù)庫時該約束會被系統(tǒng)檢查猜揪。
  • 參照完整性(Referential Integrity):參照完整性要求兩個存在關(guān)聯(lián)的關(guān)系(表)中存在一個關(guān)系的一組屬性與另一個關(guān)系的對應(yīng)的一組關(guān)系中存在滿射關(guān)系(數(shù)學解釋)惭墓。即數(shù)據(jù)庫中兩個有關(guān)聯(lián)關(guān)系的表中,一個表中的一組屬性的值必須要在另一個表中的對應(yīng)的一組屬性中出現(xiàn)而姐。該關(guān)系用于確定每個關(guān)系(表)的關(guān)聯(lián)性腊凶。若兩個關(guān)系的對應(yīng)屬性不滿足參照完整性,兩個關(guān)系之間的關(guān)聯(lián)性不成立拴念。
  • 斷言(Assertion):斷言是任意數(shù)據(jù)庫必須滿足的條件钧萍。可以說域約束與參照性完整性都是特殊的斷言政鼠。斷言要求約束的描述必須要明確风瘦。在斷言被創(chuàng)建時,數(shù)據(jù)庫要進行驗證操作公般,創(chuàng)建的斷言不能違反已經(jīng)創(chuàng)建的斷言万搔。
  • 權(quán)限(Authorization):在多用戶的數(shù)據(jù)庫系統(tǒng)中胡桨,每一個用戶對于不同數(shù)據(jù)的操作的權(quán)限不同。權(quán)限用于控制每一個用戶對于特定數(shù)據(jù)的每一種操作的進行的權(quán)力瞬雹。一般權(quán)限包括讀權(quán)限(Read Authorization)昧谊、插入權(quán)限(Insert Authorization)更新權(quán)限(Update Authorization)酗捌、刪除權(quán)限(Delete Authorization)。這些權(quán)限也可以被組合賦予不同的用戶胖缤。

另外馅巷,DDL執(zhí)行的輸出被稱為數(shù)據(jù)字典(Data Dictionary)草姻,它包含數(shù)據(jù)的數(shù)據(jù)稍刀,即屬性的列表——元數(shù)據(jù)(Metadata)。數(shù)據(jù)字典是一種特殊類型的表账月,只能被數(shù)據(jù)庫系統(tǒng)本身訪問和更新综膀。當數(shù)據(jù)庫讀取或修改實際的數(shù)據(jù)時會首先查詢數(shù)據(jù)字典。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末局齿,一起剝皮案震驚了整個濱河市剧劝,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌抓歼,老刑警劉巖讥此,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異谣妻,居然都是意外死亡萄喳,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進店門蹋半,熙熙樓的掌柜王于貴愁眉苦臉地迎上來他巨,“玉大人,你說我怎么就攤上這事减江∪就唬” “怎么了?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵辈灼,是天一觀的道長份企。 經(jīng)常有香客問我,道長茵休,這世上最難降的妖魔是什么薪棒? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任手蝎,我火速辦了婚禮,結(jié)果婚禮上俐芯,老公的妹妹穿的比我還像新娘棵介。我一直安慰自己,他們只是感情好吧史,可當我...
    茶點故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布邮辽。 她就那樣靜靜地躺著,像睡著了一般贸营。 火紅的嫁衣襯著肌膚如雪吨述。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天钞脂,我揣著相機與錄音揣云,去河邊找鬼。 笑死冰啃,一個胖子當著我的面吹牛邓夕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播阎毅,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼焚刚,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了扇调?” 一聲冷哼從身側(cè)響起矿咕,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎狼钮,沒想到半個月后碳柱,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體士聪,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡剥悟,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年曼库,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片慈缔。...
    茶點故事閱讀 38,664評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡藐鹤,死狀恐怖瓤檐,靈堂內(nèi)的尸體忽然破棺而出挠蛉,到底是詐尸還是另有隱情肄满,我是刑警寧澤,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布掰担,位于F島的核電站怒炸,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏阅羹。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望穷躁。 院中可真熱鬧因妇,春花似錦、人聲如沸婚被。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谷炸。三九已至,卻和暖如春拓颓,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背驶睦。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留缠导,地道東北人。 一個月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓酬核,卻偏偏與公主長得像嫡意,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子蔬螟,可洞房花燭夜當晚...
    茶點故事閱讀 43,554評論 2 349

推薦閱讀更多精彩內(nèi)容