日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

《数据库原理》——知识点总结(期末复习)

發(fā)布時(shí)間:2023/12/16 数据库 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《数据库原理》——知识点总结(期末复习) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

文章目錄

  • 數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)(第1、2章)
    • 概念模型
        • 一、模型的三個(gè)世界
        • 二、實(shí)體及屬性
        • 三、實(shí)體間的聯(lián)系:
        • 四、概念模型(常用E-R圖表示)
    • 數(shù)據(jù)模型
        • 一、層次模型:用樹(shù)型結(jié)構(gòu)表示實(shí)體之間的聯(lián)系。
        • 二、網(wǎng)狀模型:用圖結(jié)構(gòu)表示實(shí)體之間的聯(lián)系。
        • 三、關(guān)系模型:用二維表表示實(shí)體之間的聯(lián)系。
    • 數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)
        • 一、數(shù)據(jù)庫(kù)系統(tǒng)的模式結(jié)構(gòu)
    • 數(shù)據(jù)庫(kù)管理系統(tǒng)
        • 一、基本概念
    • 數(shù)據(jù)庫(kù)設(shè)計(jì) (第3章)
        • 一、數(shù)據(jù)庫(kù)設(shè)計(jì)的步驟
        • 概念結(jié)構(gòu)設(shè)計(jì)
          • 局部E-R圖設(shè)計(jì)
          • 合并成總體E-R圖
        • 邏輯結(jié)構(gòu)設(shè)計(jì)
          • 一、聯(lián)系的屬性和主碼
          • E-R圖向關(guān)系模型的轉(zhuǎn)換
    • 三 關(guān)系數(shù)據(jù)庫(kù) (第4章)
        • 一、域
        • 笛卡爾積
        • 關(guān)系
      • 關(guān)系的完整性
        • 關(guān)系代數(shù)
          • 一、傳統(tǒng)的集合運(yùn)算
          • 二、專(zhuān)門(mén)的關(guān)系運(yùn)算
    • 關(guān)系數(shù)據(jù)庫(kù)規(guī)范化理論(第7章)
        • 函數(shù)依賴
          • 一、有關(guān)概念:
          • 二、平凡函數(shù)依賴與非平凡函數(shù)依賴
    • 關(guān)系模式的規(guī)范化
        • 一、問(wèn)題提出
        • 二、范式
        • 三、關(guān)系模式的規(guī)范化
    • 數(shù)據(jù)庫(kù)保護(hù)技術(shù)(第8章)
    • 索引
    • 視圖
    • 事務(wù)處理與并發(fā)控制
    • 數(shù)據(jù)的鎖定
        • **一、并發(fā)操作與數(shù)據(jù)不一致性**
          • 1.數(shù)據(jù)不一致性包括三類(lèi)
          • 2.產(chǎn)生數(shù)據(jù)不一致性的原因
        • 二、并發(fā)控制的目標(biāo)、方法
          • 一、 封鎖(Locking)
        • 四、死鎖和活鎖
          • 1.死鎖:
          • 2.活鎖:
  • 寫(xiě)在最后


數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)(第1、2章)

概念模型

一、模型的三個(gè)世界

  • 現(xiàn)實(shí)世界
  • 信息世界:即根據(jù)需求分析畫(huà)概念模型(即E-R圖),E-R圖與DBMS無(wú)關(guān)。
  • 機(jī)器世界:將E-R圖轉(zhuǎn)換為某一種數(shù)據(jù)模型,數(shù)據(jù)模型與DBMS相關(guān)。
  • 注意:信息世界又稱(chēng)概念模型,機(jī)器世界又稱(chēng)數(shù)據(jù)模型

    二、實(shí)體及屬性

  • 實(shí)體:客觀存在并可相互區(qū)別的事物。
  • 屬性:實(shí)體的特性或聯(lián)系的特征都稱(chēng)為屬性。
  • 關(guān)鍵詞(碼、key):能唯一標(biāo)識(shí)每個(gè)實(shí)體又不含多余屬性的屬性組合。
  • 一個(gè)表的碼可以有多個(gè),但主碼只能有一個(gè)。

    例:借書(shū)表(學(xué)號(hào),姓名,書(shū)號(hào),書(shū)名,作者,定價(jià),借期,還期)

    規(guī)定:學(xué)生一次可以借多本書(shū),同一種書(shū)只能借一本,但可以多次續(xù)借。

  • 實(shí)體型:即二維表的結(jié)構(gòu)
    例 student(no,name,sex,age,dept)
  • 實(shí)體集:即整個(gè)二維表
  • 三、實(shí)體間的聯(lián)系:

    1.兩實(shí)體集間實(shí)體之間的聯(lián)系

    • 1:1聯(lián)系

    • 1:n聯(lián)系

    • m:n聯(lián)系

    2.同一實(shí)體集內(nèi)實(shí)體之間的聯(lián)系

    • 1:1聯(lián)系
    • 1:n聯(lián)系
    • m:n聯(lián)系

    四、概念模型(常用E-R圖表示)

    實(shí)體型:□

    屬性:○

    聯(lián)系: ◇

    說(shuō)明:
    ① E-R圖作為用戶與開(kāi)發(fā)人員的中間語(yǔ)言。
    ② E-R圖可以等價(jià)轉(zhuǎn)換為層次、網(wǎng)狀、關(guān)系模型。

    舉例:學(xué)校有若干個(gè)系,每個(gè)系有若干班級(jí)和教研室,每個(gè)教研室有若干教員,其中有的教授和副教授每人各帶若干研究生。每個(gè)班有若干學(xué)生,每個(gè)學(xué)生選修若干課程,每門(mén)課程有若干學(xué)生選修。用E-R圖畫(huà)出概念模型。

    數(shù)據(jù)模型

    一、層次模型:用樹(shù)型結(jié)構(gòu)表示實(shí)體之間的聯(lián)系。

    • 每個(gè)節(jié)點(diǎn)代表一個(gè)實(shí)體型.
    • 只能直接處理一對(duì)多(含一對(duì)一)的實(shí)體關(guān)系.
    • 查找層次數(shù)據(jù)庫(kù)中的記錄,速度較慢。

    二、網(wǎng)狀模型:用圖結(jié)構(gòu)表示實(shí)體之間的聯(lián)系。

    • 每個(gè)節(jié)點(diǎn)代表一個(gè)實(shí)體型。
    • 可以處理多對(duì)多的實(shí)體關(guān)系。
    • 查找網(wǎng)狀數(shù)據(jù)庫(kù)中的記錄,速度最快。

    三、關(guān)系模型:用二維表表示實(shí)體之間的聯(lián)系。

    1.重要術(shù)語(yǔ):

    • 關(guān)系:一個(gè)關(guān)系就是一個(gè)二維表:
    • 元組:二維表的一行,即實(shí)體:
    • 關(guān)系模式:在實(shí)體型的基礎(chǔ)上,注明主碼。
    • 關(guān)系模型:指一個(gè)數(shù)據(jù)庫(kù)中全部二維表結(jié)構(gòu)的集合。

    2.特點(diǎn):

  • 關(guān)系模型是建立在嚴(yán)格的數(shù)學(xué)理論的基礎(chǔ)上的;
  • 關(guān)系模型的存取路徑對(duì)用戶透明:
  • 查找關(guān)系數(shù)據(jù)庫(kù)中的記錄,速度最慢。
  • 小結(jié):數(shù)據(jù)中有三種類(lèi)型,DBMS就有三種類(lèi)型,DB亦有三種類(lèi)型。

    數(shù)據(jù)庫(kù)系統(tǒng)結(jié)構(gòu)

    一、數(shù)據(jù)庫(kù)系統(tǒng)的模式結(jié)構(gòu)

  • 模式:是數(shù)據(jù)庫(kù)中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述。

  • 模式只涉及數(shù)據(jù)庫(kù)的結(jié)構(gòu);

  • 模式既不涉及應(yīng)用程序,又不涉及數(shù)據(jù)庫(kù)結(jié)構(gòu)的存儲(chǔ);

  • 外模式:是模式的一個(gè)子集,是與一個(gè)應(yīng)用程序有關(guān)的邏輯表示。特點(diǎn):一個(gè)應(yīng)用程序只能使用一個(gè)外模式,但同一個(gè)外模式可為多個(gè)應(yīng)用程序使用。

  • 內(nèi)模式:描述數(shù)據(jù)庫(kù)結(jié)構(gòu)的存儲(chǔ),但不涉及物理記錄。

  • 2.兩級(jí)映象

    1. 外模式/模式映象:保證數(shù)據(jù)庫(kù)的邏輯獨(dú)立性;
    2. 模式/內(nèi)模式映象:保證數(shù)據(jù)庫(kù)的物理獨(dú)立性;

    3.兩級(jí)映象的意義

  • 使數(shù)據(jù)庫(kù)與應(yīng)用系統(tǒng)完全分開(kāi),數(shù)據(jù)庫(kù)改變時(shí),應(yīng)用系統(tǒng)不必改變。
  • 數(shù)據(jù)的存取完全由DBMS管理,用戶不必考慮存取路徑。
  • 數(shù)據(jù)庫(kù)管理系統(tǒng)

    DBMS的功能:負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)進(jìn)行統(tǒng)一的管理與控制。

  • 數(shù)據(jù)定義:即定義數(shù)據(jù)庫(kù)中各對(duì)象的結(jié)構(gòu);
  • 數(shù)據(jù)操縱:包括對(duì)數(shù)據(jù)庫(kù)進(jìn)行查詢、插入、刪除、修改等操作。
  • 數(shù)據(jù)控制:包括安全性控制、完整性控制、并發(fā)控制、數(shù)據(jù)庫(kù)恢復(fù)。
  • 一、基本概念

  • 碼:能夠唯一標(biāo)識(shí)元組的屬性集。
  • 候選碼:一個(gè)屬性集既能唯一標(biāo)識(shí)元組,且又不含多余屬性,一個(gè)關(guān)系模式可以有多個(gè)候選碼。
  • 主碼:任選候選碼中的一個(gè)。
  • 非主屬性:不包含在主碼中的各個(gè)屬性。
  • 外碼:設(shè)F是關(guān)系R的一個(gè)屬性,不是R的主碼,但卻是另一個(gè)關(guān)系S的主碼,則F是關(guān)系R的外碼。
  • 例如:student ( sno, sname, ssex, sage, sdept)
    Sc ( sno, cno, grade)

    Sc的主碼為:(sno,cno);外碼為:sno

    數(shù)據(jù)庫(kù)設(shè)計(jì) (第3章)

    一、數(shù)據(jù)庫(kù)設(shè)計(jì)的步驟

    • 需求分析:了解分析用戶的需要、要求。
    • 概念結(jié)構(gòu)設(shè)計(jì):根據(jù)需求分析的結(jié)果畫(huà)概念模型(即E-R圖).
    • 邏輯結(jié)構(gòu)設(shè)計(jì):將E-R圖轉(zhuǎn)換為某一種數(shù)據(jù)模型,并優(yōu)化。
    • 物理結(jié)構(gòu)設(shè)計(jì)
    • 數(shù)據(jù)庫(kù)實(shí)施
    • 數(shù)據(jù)庫(kù)運(yùn)行與恢復(fù)

    概念結(jié)構(gòu)設(shè)計(jì)

    局部E-R圖設(shè)計(jì)

    1.確定局部范圍:通常把系統(tǒng)涉及的各個(gè)部門(mén)或各個(gè)主要功能作為局部。

    2.確定實(shí)體與屬性

    • ① 屬性是不能再分的數(shù)據(jù)項(xiàng);
    • ② 聯(lián)系只發(fā)生在兩實(shí)體之間;
    • ③ 原則上,能夠作為屬性,就不要作為實(shí)體。
    合并成總體E-R圖
    • 消除各局部E-R圖的沖突問(wèn)題。
    • 按公共實(shí)體名合并,并生成初步E-R圖。
    • 消除冗余的屬性和冗余的聯(lián)系,生成總體E-R圖。

    邏輯結(jié)構(gòu)設(shè)計(jì)

    一、聯(lián)系的屬性和主碼
    • (1)聯(lián)系的屬性:必須包含相關(guān)聯(lián)的各實(shí)體型的主碼。

    • 1:1聯(lián)系:可以是相關(guān)聯(lián)的任一實(shí)體型的主碼。

    • 1:n聯(lián)系:必須是n方實(shí)體型的主碼。

    • m:n聯(lián)系:必須是相關(guān)聯(lián)的各實(shí)體型的主碼之和。

    E-R圖向關(guān)系模型的轉(zhuǎn)換

    (1)把每個(gè)實(shí)體型轉(zhuǎn)換為一個(gè)關(guān)系模式。
    (2)1:1聯(lián)系:可以消化到相關(guān)聯(lián)的任一實(shí)體型對(duì)應(yīng)的關(guān)系模式中。

    班長(zhǎng)( XH, XM, NL,BH)
    班級(jí)(BH,RS)

    (3)1:n聯(lián)系:可以消化到n方實(shí)體名對(duì)應(yīng)的關(guān)系模式中。
    例:一個(gè)班級(jí)有多名學(xué)生,每名學(xué)生只能屬于一個(gè)班級(jí)。每一個(gè)班級(jí)有一名班長(zhǎng),他是學(xué)生中的一員。

    學(xué)生(XH,XM,NL,BH)
    班級(jí)(BH,RS,XH)
    ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ↓ →班長(zhǎng)的學(xué)號(hào)

    4)m:n聯(lián)系:必須轉(zhuǎn)換為一個(gè)關(guān)系模式,并且不能消化。
    例:

    學(xué)生(sno,sname, ssex, sage, sdept)
    課程(cno, cname,credit)
    選修(sno, cno, grade)

    (5)多元聯(lián)系:不能消化

    例:

    三 關(guān)系數(shù)據(jù)庫(kù) (第4章)

    一、域

  • 定義:域是一組具有相同類(lèi)型的值的集合。
  • 域的基數(shù):域中所含數(shù)據(jù)的個(gè)數(shù)。
  • 笛卡爾積

  • 定義:給定一組域D1,D2,D3,則D1×D2×D3稱(chēng)為笛卡爾積。
  • 笛卡爾積D1×D2×D3對(duì)應(yīng)一個(gè)二維表,所含元組的個(gè)數(shù)等于各個(gè)域的基數(shù)之積。
  • 關(guān)系

  • 定義:笛卡爾積的一部分元組稱(chēng)為關(guān)系。
  • 關(guān)系的目:一個(gè)關(guān)系所含屬性的個(gè)數(shù)。
  • 關(guān)系的性質(zhì):任意兩個(gè)元組不能完全相同,同一關(guān)系的屬性名不允許重復(fù)。
  • 關(guān)系的完整性

  • 實(shí)體完整性:指關(guān)系的所有主屬性都不能去空值。注意:實(shí)體完整性不僅僅是主碼整體不能取空值。
  • 參照完整性:指一個(gè)關(guān)系外碼的取值必須是相關(guān)關(guān)系中主碼的有效值或空值。
  • 例: 班級(jí)( 班名,人數(shù)) 學(xué)生(學(xué)號(hào),姓名,性別,密碼,班名) 在學(xué)生表中,班名的取值必須是班級(jí)表[班名]的值或空值。

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

    一、傳統(tǒng)的集合運(yùn)算

    設(shè)關(guān)系R、S的結(jié)構(gòu)完全相同,則:

    • R∪S:由屬于R或?qū)儆赟的元組組成。
    • R∩S:由既屬于R又屬于S的元組組成。
    • R-S:由屬于R而不屬于S的元組組成。

    思考:(R∩S)∪(R-S)=?(結(jié)果就是R)

    R×S:設(shè)R有m個(gè)屬性,K1個(gè)元組;S有n個(gè)屬性,K2個(gè)元組,則R×S含有(m+n)個(gè)屬性,(K1×K2)個(gè)元組。

    二、專(zhuān)門(mén)的關(guān)系運(yùn)算
  • 選擇:從關(guān)系R中選擇滿足條件的元組。記為:

  • 投影:從關(guān)系R中選擇若干屬性組成新的關(guān)系,并把新關(guān)系的重復(fù)元組去掉。記為:

  • 條件連接:將兩關(guān)系按一定條件連接成一個(gè)新關(guān)系,記為:

  • 說(shuō)明:條件連接:兩關(guān)系可以沒(méi)有公共屬性,若有公共屬性,則新關(guān)系含有重復(fù)屬性。

  • 自然連接:將兩關(guān)系按公共屬性連接成一個(gè)新的關(guān)系,并把新關(guān)系的重復(fù)屬性去掉。
    記為:
  • 說(shuō)明:

    • ① 自然連接:兩關(guān)系至少有一個(gè)公共屬性。
    • ② 對(duì)于R的每個(gè)元組,S都從第一個(gè)元組開(kāi)始判斷,若兩元組的公共屬性值相同,則產(chǎn)生一個(gè)新元組添加到新關(guān)系中,最后把新關(guān)系中的重復(fù)屬性去掉。

    關(guān)系數(shù)據(jù)庫(kù)規(guī)范化理論(第7章)

    函數(shù)依賴

    一、有關(guān)概念:
  • 函數(shù)依賴:任給R(U),U為屬性集,x、y為U的子集,如果對(duì)于x的每個(gè)值,y有唯一確定的值與之對(duì)應(yīng),則稱(chēng)x決定y,或y函數(shù)依賴于x。記為:x→y。
  • 完全函數(shù)依賴:若x→y,且對(duì)于x的所有真子集x′,都有x′ 不能決定y,則稱(chēng)x完全決定y,或y完全函數(shù)依賴于x。記為:

    結(jié)論:若x→y,且x只包含一個(gè)屬性,則
  • 部分函數(shù)依賴:
    若x→y,且存在x的一個(gè)真子集x′,滿足x′→y,則稱(chēng)x部分決定y,或y部分函數(shù)依賴于x。記為:
  • 傳遞函數(shù)依賴:若x→y,y→z,但 y 不能決定x,則稱(chēng)
  • 二、平凡函數(shù)依賴與非平凡函數(shù)依賴

    設(shè)x→y,如果y是x的子集,則該依賴是平凡的。如:
    Sno,sname→sno

    如果y中至少有一個(gè)屬性不在x中,則該依賴是非平凡的。如:
    Sno,sname→sname,sdept

    如果y中沒(méi)有一個(gè)屬性在x中,則該依賴為完全非平凡的。

    關(guān)系模式的規(guī)范化

    一、問(wèn)題提出

    HKKHKMXMDZCJ
    961-C1--OS--高明--D1--70-
    962-C2--DBS--高飛--D2--72-
    962-C4--AI--高飛--D2--80-
    962-C1--OS--高明--D1--75-
    963C1OS高明D190

    答:存在問(wèn)題

  • ① 數(shù)據(jù)冗余大;
  • ② 修改麻煩;
  • ③ 插入異常:應(yīng)該插入到DB中的數(shù)據(jù)插不進(jìn)去。
  • 如:新開(kāi)課程沒(méi)有學(xué)生選修時(shí),新開(kāi)課程的課程號(hào)、課程名插不進(jìn)去。

  • ④ 刪除異常:不應(yīng)該刪除的數(shù)據(jù)被刪掉。
  • 如選修某門(mén)課的學(xué)生畢業(yè)了,在刪除學(xué)生信息的同時(shí),把課程信息也刪除掉。

    結(jié)論:一個(gè)好的關(guān)系模式應(yīng)滿足:

    • ① 冗余應(yīng)盡可能少;
    • ② 應(yīng)盡可能避免插入、刪除異常;
    • ③ 消去關(guān)系中不合適的屬性依賴關(guān)系。

    二、范式

    • 什么叫范式?
      答:指一個(gè)關(guān)系的非主屬性函數(shù)依賴于主碼的程度。

    • 什么叫關(guān)系規(guī)范化?
      答:指一個(gè)關(guān)系從低級(jí)范式向高級(jí)范式的轉(zhuǎn)換過(guò)程。

    • 應(yīng)用:關(guān)系規(guī)范化理論應(yīng)用在邏輯結(jié)構(gòu)設(shè)計(jì)階段。

    三、關(guān)系模式的規(guī)范化

    1.第一范式(1NF)

    • 定義:若關(guān)系R的所有屬性不能再分,則R∈1NF

    2.第二范式(2NF)

    定義:若關(guān)系R∈1NF,且它的每個(gè)非主屬性都完全依賴于主碼,則稱(chēng)R∈2NF。

    ② 存在問(wèn)題:

    • 冗余大: R1必要冗余,R2冗余可以修改。
    • 修改麻煩
    • 插入異常:如新來(lái)的教師沒(méi)有上課,則該教師的信息就沒(méi)辦法插入R2表中。
    • 刪除異常:若某位教師只授一門(mén)課,當(dāng)該門(mén)課不開(kāi)時(shí),該教師的信息亦被刪除。

    原因:存在非主屬性對(duì)主碼的傳遞依賴。

    ④ 解決辦法:將R2 一分為二

    3.第三范式(3NF)

    定義:若關(guān)系R∈2NF,且它的每個(gè)非主屬性都不傳遞依賴于主碼,則稱(chēng)R∈3NF。

    ② 規(guī)范化過(guò)程

    非規(guī)范關(guān)系

    ↓使每個(gè)屬性都不能再分

    1NF

    ↓消去非主屬性對(duì)主碼的部分依賴

    2NF

    ↓消去非主屬性對(duì)主碼的傳遞依賴

    3NF

    BCNF:關(guān)系模式R<U,F>中,如每一個(gè)決定因素都包含碼,則R是BC范式。如果R屬于BCNF 那么R一定屬于3NF,反之未必。

    4.結(jié)論

    • ① 若R∈1NF,且主碼只含一個(gè)屬性,則R一定為2NF。
    • ② 若R∈2NF,且只有0~1個(gè)非主屬性,則R一定為3NF。
    • ③ 3NF一般控制了數(shù)據(jù)冗余,一般避免了操作異常。
    • ④ 范式并非越高越好,適可而止。

    數(shù)據(jù)庫(kù)保護(hù)技術(shù)(第8章)

    一、兩種身份驗(yàn)證模式:

  • 僅windows模式:用戶只能使用windows登錄名登錄SQL Server
  • 混合模式:用戶可以使用windows登錄名或SQL Server登錄名登錄SQL Server
  • 二、兩種身份驗(yàn)證:

    用戶登錄到SQL Server時(shí),必須使用特定的登錄名和密碼標(biāo)識(shí)自己。

  • Windows身份驗(yàn)證:用戶登錄到SQL Server時(shí),使用操作系統(tǒng)當(dāng)前的登錄名和密碼。
  • SQL Server身份驗(yàn)證:用戶登錄到SQL Server時(shí),必須顯式提供登錄名和密碼。
  • 常用安全性控制方法:用戶標(biāo)識(shí)和控制、存取控制、視圖、審計(jì)、數(shù)據(jù)加密。

    索引

    一、索引的概念:

    • ①索引使用戶能快速訪問(wèn)數(shù)據(jù)表的特定信息。
    • ② 索引必須依附于某個(gè)基本表,不能單獨(dú)存在。

    二、索引的類(lèi)型:

    • 聚集索引:影響數(shù)據(jù)表的記錄順序
    • 非聚集索引:不會(huì)影響數(shù)據(jù)表的記錄順序

    注:一個(gè)表只能建立一個(gè)聚集索引,但可以建立若干個(gè)非聚集索引。

    三、創(chuàng)建索引

    1.自動(dòng)創(chuàng)建索引:

    • 如果在數(shù)據(jù)表的某個(gè)屬性設(shè)置主鍵約束或唯一約束,則系統(tǒng)將在這些屬性上自動(dòng)創(chuàng)建唯一索引。
    • 自動(dòng)創(chuàng)建的索引隨約束的存在而存在,隨約束的消失而消失。

    視圖

    一、視圖的特點(diǎn):

    • 視圖只有結(jié)構(gòu),沒(méi)有記錄,是虛表;
    • ②一個(gè)視圖總對(duì)應(yīng)著一個(gè)select語(yǔ)句;
    • ③對(duì)視圖的查詢、更新,實(shí)際上是對(duì)基本表的查詢、更新。

    事務(wù)處理與并發(fā)控制

    1.什么叫事務(wù)?

    答: 事務(wù)是用戶定義的一組操作序列。

    • 事務(wù)是并發(fā)控制的基本單位。
    • 一個(gè)事務(wù)包含的諸操作要么都執(zhí)行,要么都不執(zhí)行

    1. 事務(wù)的屬性

  • 原子性:指事務(wù)中包含的諸操作要么都執(zhí)行,要么都不執(zhí)行。
  • 一致性:事務(wù)必須使數(shù)據(jù)庫(kù)從一個(gè)一致性狀態(tài)變到另一個(gè)一致性狀態(tài)。
  • 隔離性:一個(gè)事務(wù)的執(zhí)行不能被其他事務(wù)干擾。
  • 持久性:該事務(wù)所對(duì)數(shù)據(jù)庫(kù)所作的更改便持久的保存在數(shù)據(jù)庫(kù)之中,并不會(huì)被回滾
  • 數(shù)據(jù)的鎖定

    一、并發(fā)操作與數(shù)據(jù)不一致性

    1.數(shù)據(jù)不一致性包括三類(lèi)
    • 丟失修改:指事務(wù)1與事務(wù)2從數(shù)據(jù)庫(kù)中讀入同一數(shù)據(jù)并修改,事務(wù)2的提交結(jié)果破壞事務(wù)1提交的結(jié)果,導(dǎo)致事務(wù)1的修改被丟失。
    • 不可重復(fù)讀:指事務(wù)1讀取數(shù)據(jù)后,事務(wù)2執(zhí)行更新操作,使事務(wù)1無(wú)法再現(xiàn)前一次讀取結(jié)果。
    • 讀臟數(shù)據(jù):指事務(wù)1修改某一數(shù)據(jù)后,事務(wù)2讀取該數(shù)據(jù),事務(wù)1由于某種原因被撤銷(xiāo),這時(shí)數(shù)據(jù)又恢復(fù)到原值,事務(wù)2讀到的數(shù)據(jù)與數(shù)據(jù)庫(kù)中的數(shù)據(jù)不一致,稱(chēng)為“臟”數(shù)據(jù)。
    2.產(chǎn)生數(shù)據(jù)不一致性的原因
    • 并發(fā)操作破壞了事務(wù)的隔離性。

    二、并發(fā)控制的目標(biāo)、方法

    • 目標(biāo):確保DB中的數(shù)據(jù)一致性。

    • 并發(fā)事務(wù)正確性的原則 :幾個(gè)事務(wù)的并發(fā)執(zhí)行是正確的,當(dāng)且僅當(dāng)其結(jié)果與任何一個(gè)串行執(zhí)行的結(jié)果相同。

    • 并發(fā)控制的方法 DBMS一般采用封鎖”技術(shù),保證并發(fā)操作的可串行化。

    一、 封鎖(Locking)

    1. 什么叫封鎖?
    答:SQL Server自動(dòng)強(qiáng)制封鎖,并且會(huì)將封鎖粒度控制在合適的級(jí)別,用戶不必考慮封鎖問(wèn)題。

    2. 封鎖類(lèi)型

    • 排它鎖(X鎖):事務(wù)T對(duì)數(shù)據(jù)A加X(jué)鎖,其它事務(wù)不能再對(duì)A加鎖,即其它事務(wù)不能讀取和修改A。
    • 共享鎖(S鎖):事務(wù)T對(duì)數(shù)據(jù)A加S鎖,其它事務(wù)只能再對(duì)A加S鎖,即其它事務(wù)只能讀A,不能修改A。

    3. 封鎖粒度

    封鎖對(duì)象可以是屬性列、元組、關(guān)系、整個(gè)數(shù)據(jù)庫(kù)。封鎖對(duì)象的大小稱(chēng)為封鎖粒度。封鎖粒度越小,并發(fā)度越高,但并發(fā)控制的開(kāi)銷(xiāo)越大

    4. 封鎖協(xié)議

  • 事務(wù)T在修改數(shù)據(jù)A之前,必須對(duì)其加X(jué)鎖,直到事務(wù)結(jié)束才釋放。

  • 事務(wù)T在讀取數(shù)據(jù)A之前,必須對(duì)其加S鎖,直到事務(wù)結(jié)束才釋放。 遵循封鎖協(xié)議,可以解決三種數(shù)據(jù)不一致性問(wèn)題

  • 丟失修改
  • 不可重復(fù)讀
  • 讀“臟”數(shù)據(jù)
  • 四、死鎖和活鎖

    封鎖技術(shù)可以解決并發(fā)操作的不一致性問(wèn)題,但也帶來(lái)新的問(wèn)題,即死鎖和活鎖。

    1.死鎖:

    定義:兩個(gè)事務(wù)已經(jīng)各自鎖定一個(gè)數(shù)據(jù),但是又要訪問(wèn)被對(duì)方鎖定的數(shù)據(jù),造成了循環(huán)等待,稱(chēng)為死鎖。

    避免死鎖的方法:

    • 順序封鎖法:若規(guī)定封鎖順序?yàn)锳,B,則T1,T2只能先封鎖A,再封鎖B。
    2.活鎖:
    • 定義:若多個(gè)事務(wù)請(qǐng)求封鎖同一個(gè)數(shù)據(jù)時(shí),其中的某個(gè)事務(wù)總處于等待狀態(tài),則稱(chēng)為活鎖。
    • ② 避免活鎖的方法:先來(lái)先服務(wù)

    事務(wù)可串行化調(diào)度:兩段鎖協(xié)議.

    寫(xiě)在最后

    只有把抱怨環(huán)境的心情化為上進(jìn)的力量,才是成功的保證。——羅曼·羅蘭

    總結(jié)

    以上是生活随笔為你收集整理的《数据库原理》——知识点总结(期末复习)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。