溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MySQL關(guān)系型數(shù)據(jù)庫的基礎(chǔ)概念是什么

發(fā)布時間:2021-07-02 17:20:36 來源:億速云 閱讀:184 作者:chen 欄目:開發(fā)技術(shù)

這篇文章主要介紹“MySQL關(guān)系型數(shù)據(jù)庫的基礎(chǔ)概念是什么”,在日常操作中,相信很多人在MySQL關(guān)系型數(shù)據(jù)庫的基礎(chǔ)概念是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”MySQL關(guān)系型數(shù)據(jù)庫的基礎(chǔ)概念是什么”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

目錄
  • 一、基礎(chǔ)概念

  • 二、數(shù)據(jù)庫管理技術(shù)的發(fā)展

  • 三、關(guān)系型數(shù)據(jù)庫(RDBMS)概念

  • 四、RDBMS設(shè)計范式

一、基礎(chǔ)概念

數(shù)據(jù)(Data)是描述事物的符號記錄,是指利用物理符號記錄下來的、可以鑒別的信息。

1、數(shù)據(jù)庫(Database,DB)是指長期儲存在計算機中的有組織的、可共享的數(shù)據(jù)集合。數(shù)據(jù)要按照一定的數(shù)據(jù)模型組織、描述和存儲,具有較小的冗余度、較高的數(shù)據(jù)獨立性,系統(tǒng)易于擴展,并可以被多個用戶分享。

數(shù)據(jù)的三個基本特點:

  • 永久存儲

  • 有組織

  • 可共享

2、數(shù)據(jù)庫管理系統(tǒng)(DBMS)是專門用于建立和管理數(shù)據(jù)庫的一套軟件,介于應(yīng)用程序和操作系統(tǒng)之間。 它實現(xiàn)數(shù)據(jù)庫系統(tǒng)的各種功能。是數(shù)據(jù)庫系統(tǒng)的核心。

  • 數(shù)據(jù)定義功能

  • 數(shù)據(jù)操作功能

  • 數(shù)據(jù)庫的運行管理功能

  • 數(shù)據(jù)庫的建立和維護功能

  • 數(shù)據(jù)組織、存儲和管理功能

  • 數(shù)據(jù)的安全保證

  • 數(shù)據(jù)的備份功能

3、數(shù)據(jù)庫系統(tǒng)的構(gòu)成有:

  • 用戶(終端用戶)

  • 程序(API)

  • 應(yīng)用程序:指以數(shù)據(jù)庫為基礎(chǔ)的應(yīng)用程序

  • 數(shù)據(jù)庫管理系統(tǒng)

  • 數(shù)據(jù)庫管理員(DBA):負責(zé)數(shù)據(jù)庫的規(guī)劃、設(shè)計、協(xié)調(diào)、維護和管理等工作

  • 數(shù)據(jù)庫

4、數(shù)據(jù)庫系統(tǒng)的架構(gòu):

  • 單機架構(gòu)

  • 大型 主機/終端 架構(gòu)

  • 主從式架構(gòu) c/s :客戶/服務(wù)器結(jié)構(gòu)(Client/Server,C/S)中, “客戶端”、“前臺”或“表示層”主要完成與數(shù)據(jù)庫使用者的交互任務(wù); “服務(wù)器”、“后臺”或“數(shù)據(jù)層”主要負責(zé)數(shù)據(jù)管理。

  • 分布式架構(gòu)

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

  • 模式:也稱為概念模式或邏輯模式,是數(shù)據(jù)在邏輯上的視圖,即概念視圖

  • 外模式:也稱為子模式或用戶模式 數(shù)據(jù)視圖,即用戶視圖

  • 內(nèi)模式:也稱為存儲模式,是內(nèi)部視圖或存儲視圖

外模式/模式映像 保證了數(shù)據(jù)與程序的邏輯獨立性

內(nèi)模式/模式映像 保證了數(shù)據(jù)與程序的物理獨立性

6、模型

模型(Model)是現(xiàn)實世界特征的模擬和抽象表達。

數(shù)據(jù)模型是對現(xiàn)實世界數(shù)據(jù)特征的抽象,描述的是數(shù)據(jù)的共性內(nèi)容。

二、數(shù)據(jù)庫管理技術(shù)的發(fā)展

  • 萌芽階段-----文件系統(tǒng) 使用磁盤文件來存儲數(shù)據(jù)

  • 初級階段-----第一代數(shù)據(jù)庫 出現(xiàn)了網(wǎng)狀模型、層次模型的數(shù)據(jù)庫

  • 中級階段-----第二代數(shù)據(jù)庫 關(guān)系型數(shù)據(jù)庫和結(jié)構(gòu)化查詢語言

  • 高級階段------新一代數(shù)據(jù)庫 “關(guān)系-對象”型數(shù)據(jù)庫

1、文件系統(tǒng)管理的缺點

  • 編寫應(yīng)用程序不方便

  • 數(shù)據(jù)冗余不可避免

  • 應(yīng)用程序依賴性

  • 不支持對文件的并發(fā)訪問

  • 數(shù)據(jù)間聯(lián)系弱

  • 難以按用戶視圖表示數(shù)據(jù)

  • 無安全控制功能

2、數(shù)據(jù)庫管理系統(tǒng)的優(yōu)點

  • 相互關(guān)聯(lián)的數(shù)據(jù)的集合

  • 較少的數(shù)據(jù)冗余

  • 程序與數(shù)據(jù)相互獨立

  • 保證數(shù)據(jù)的安全、可靠

  • 最大限度地保證數(shù)據(jù)的正確性

  • 數(shù)據(jù)可以并發(fā)使用并能同時保證一致性

三、關(guān)系型數(shù)據(jù)庫(RDBMS)概念

關(guān)系數(shù)據(jù)庫(Relation Database)是所有關(guān)系的集合,構(gòu)成一個關(guān)系數(shù)據(jù)庫。 以關(guān)系模型作為數(shù)據(jù)的邏輯模型,并采用關(guān)系作為數(shù)據(jù)組織方式的一類數(shù)據(jù)庫,其數(shù)據(jù)庫操作建立在關(guān)系代數(shù)的基礎(chǔ)上。

  • 表(Table)是一個二維的數(shù)據(jù)結(jié)構(gòu),由表名、列、若干行數(shù)據(jù)組成。

  • 關(guān)系 :關(guān)系就是二維表。并滿足如下性質(zhì): 表中的行、列次序并不重要

  • 行row:表中的每一行,又稱為一條記錄Record或元組Tuple。表中的數(shù)據(jù)按行存儲。

  • 列column:表中的每一列,稱為屬性Attribute,字段Field

  • 分量(Component) :元組(行)中的一個屬性值,稱為分量。

  • 鍵(Key):屬性(或?qū)傩越M)的值都能用來唯一標(biāo)識該關(guān)系的元組,則稱這些屬性(或?qū)傩越M)為該關(guān)系的鍵。

  • 主鍵(Primary key):用于惟一確定一個記錄的字段

  • 外鍵(Foreign Key) 某個屬性(或?qū)傩越M)不是這個關(guān)系的主碼或候選碼,而是另一個關(guān)系的主鍵。

  • 參照關(guān)系(Referencing Relation)和被參照關(guān)系(Referenced Relation):參照關(guān)系也稱為從關(guān)系,被參照關(guān)系也稱為主關(guān)系,它們是指以外鍵相關(guān)聯(lián)的兩個關(guān)系。

  • 域domain:屬性的取值范圍,如,性別只能是‘男'和‘女'兩個值。

  • 數(shù)據(jù)類型(Data Type) 每個列都有相應(yīng)的數(shù)據(jù)類型,它用于限制(或容許)該列中存儲的數(shù)據(jù)。

1、事務(wù)transaction

多個操作被當(dāng)作一個整體對待

事務(wù)遵循ACID特性:

  • A原子性:不可分割性,所有的動作要全做,要不都不做

  • C一致性:保持數(shù)據(jù)一致性

  • I隔離性:事務(wù)沒有完成無法看大最終數(shù)據(jù)

  • dirty data 臟數(shù)據(jù):事務(wù)沒做完的數(shù)據(jù)

  • D持久性:持久影響,永久性

2、E-R模型(實體-聯(lián)系)

實體Entity:客觀存在并可以相互區(qū)分的客觀事物或抽象事件稱為實體。在E-R圖中用矩形框表示實體,把實體名寫在框內(nèi)。

屬性:實體所具有的特征或性質(zhì)

聯(lián)系:聯(lián)系是數(shù)據(jù)之間的關(guān)聯(lián)集合,是客觀存在的應(yīng)用語義鏈。聯(lián)系有實體內(nèi)部的聯(lián)系和實體之間的聯(lián)系。實體之間的聯(lián)系用菱形框表示。

聯(lián)系的類型:

  • 一對一聯(lián)系(1:1)

  • 一對多聯(lián)系(1:n)

  • 多對多聯(lián)系(m:n)

3、關(guān)系型數(shù)據(jù)庫的歷史

  • 1970年 IBM的E.F.Codd提出了關(guān)系模型,奠定了關(guān)系數(shù)據(jù)庫的理論基礎(chǔ)

  • 20世紀70年代末關(guān)系方法理論研究和軟件系統(tǒng)的研制取得了重大突破

  • 1981年 出現(xiàn)了比較成熟的關(guān)系數(shù)據(jù)庫管理技術(shù),證實了關(guān)系數(shù)據(jù)庫的優(yōu)點:高級的非過程語言接口、較好的數(shù)據(jù)獨立性。

  • 20世紀80年代后 網(wǎng)狀模型和層次模型與底層實現(xiàn)的結(jié)合緊密,關(guān)系模型具有堅實理論基礎(chǔ),成為主流數(shù)據(jù)模型。

4、關(guān)系數(shù)據(jù)模型的組成要素

數(shù)據(jù)模型的要素包括:

  • 關(guān)系數(shù)據(jù)結(jié)構(gòu)

  • 關(guān)系操作集合

  • 關(guān)系完整性約束

5、數(shù)據(jù)三要素

  • 數(shù)據(jù)結(jié)構(gòu):包括兩類,一類是與數(shù)據(jù)類型、內(nèi)容、性質(zhì)有關(guān)的對象,比如關(guān)系模型中的域、屬性和關(guān)系等;另一類是與數(shù)據(jù)之間聯(lián)系有關(guān)的對象,它從數(shù)據(jù)組織層表達數(shù)據(jù)記錄與字段的結(jié)構(gòu)。

  • 數(shù)據(jù)的操作:

數(shù)據(jù)提取,在數(shù)據(jù)集合中提取感興趣的內(nèi)容。
數(shù)據(jù)更新:變更數(shù)據(jù)庫中的數(shù)據(jù)。

  • 數(shù)據(jù)的約束條件:是一組完整性規(guī)則的集合

實體(行)完整性 Entity integrity
域(列)完整性 Domain Integrity
參考完整性 Referential Integrity

6、約束constraint

  • 主鍵約束:一個或多個字段的組合,填入的數(shù)據(jù)必須能在本表中唯一標(biāo)識本行;必須提供數(shù)據(jù),即NOT NULL,一個表只能有一個。

  • 惟一鍵約束:一個或多個字段的組合,填入的數(shù)據(jù)必須能在本表中唯一標(biāo)識本行;允許為NULL,一個表可以存在多個。

  • 外鍵約束:一個表中的某字段可填入的數(shù)據(jù)取決于另一個表的主鍵或唯一鍵已有的數(shù)據(jù)。

  • 檢查約束:字段值在一定范圍內(nèi)。

7、索引

將表中的一個或多個字段中的數(shù)據(jù)復(fù)制一份另存,并且此些需要按特定次序排序存儲。

8、關(guān)系運算

  • 選擇:挑選出符合條件的行

  • 投影:挑選出需要的字段

  • 連接:表間字段的關(guān)聯(lián)

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

  • 數(shù)據(jù)抽象:

物理層:數(shù)據(jù)存儲格式,即RDBMS在磁盤上如何組織文件
邏輯層:DBA角度,描述存儲什么數(shù)據(jù),以及數(shù)據(jù)間存在什么樣的關(guān)系
視圖層:用戶角度,描述DB中的部分數(shù)據(jù)

  • 關(guān)系模型的分類:

基于對象的關(guān)系模型
半結(jié)構(gòu)化的關(guān)系模型

四、RDBMS設(shè)計范式

設(shè)計關(guān)系數(shù)據(jù)庫時,遵從不同的規(guī)范要求,設(shè)計出合理的關(guān)系型數(shù)據(jù)庫,這些不同的規(guī)范要求被稱為不同的范式,各種范式呈遞次規(guī)范,越高的范式數(shù)據(jù)庫冗余越小。

目前關(guān)系數(shù)據(jù)庫有六種范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴德斯科范式(BCNF)、第四范式(4NF)和第五范式(5NF,又稱完美范式)。

滿足最低要求的范式是第一范式(1NF)。在第一范式的基礎(chǔ)上進一步滿足更多規(guī)范要求的稱為第二范式(2NF),其余范式以次類推。

一般說來,數(shù)據(jù)庫只需滿足第三范式(3NF)即可。

  • 1NF:無重復(fù)的列,每一列都是不可分割的基本數(shù)據(jù)項,同一列中不能有多個值,即實體中的某個屬性不能有多個值或者不能有重復(fù)的屬性。除去同類型的字段,就是無重復(fù)的列。

說明:第一范式(1NF)是對關(guān)系模式的基本要求,不滿足第一范式(1NF)的數(shù)據(jù)庫就不是關(guān)系數(shù)據(jù)庫

  • 2NF:屬性完全依賴于主鍵,第二范式必須先滿足第一范式,要求表中的每個行必須可以被唯一地區(qū)分。通常為表加上一個列,以存儲各個實例的唯一標(biāo)識PK,非PK的字段需要與整個PK有直接相關(guān)性。

  • 3NF:屬性不依賴于其它非主屬性,滿足第三范式必須先滿足第二范式。第三范式要求一個數(shù)據(jù)庫表中不包含已在其它表中已包含的非主關(guān)鍵字信息,非PK的字段間不能有從屬關(guān)系。

到此,關(guān)于“MySQL關(guān)系型數(shù)據(jù)庫的基礎(chǔ)概念是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI