今天開始要學習Mysql資料庫相關知識,為以後用Mysql資料庫做開發做準備,首先總結回憶一下資料庫基本知識概念。
資料:描述事物的符号記錄,可以使數字,也可以是文字、圖形、圖像、聲音、語言等,資料有多種形式,它們都可以經過數字化後存入計算機。資料的含義稱為資料的語義,資料與語義是不可分的。
資料庫:存儲資料的倉庫,是長期存放在計算機内、有組織、可共享的大量資料的集合。資料庫中的資料按照一定資料模型組織、描述和存儲,具有較小的備援度,較高的獨立性和易擴充性,并為各種使用者共享,即資料庫有永久存儲、有知識和可共享三個基本特點。
資料庫管理系統(DBMS):是位于使用者與作業系統之間的一層資料管理軟體。它的主用功能包括:
- 資料定義功能:提供資料定義語言(DDL),讓使用者友善地對資料庫中資料對象進行定義。
- 資料組組織、存儲和管理:要提高存儲空間使用率和存儲效率。
- 資料操縱功能:提供資料操縱語言(DML),實作對資料庫基本操作,如增删改查等。
- 資料庫的建立和維護功能:統一管理控制,以保證安全、完整、多使用者并發使用。
- 其它功能:與網絡中其它軟體系統通信功能,異構資料庫之間的互訪和互操作功能。
資料庫系統:指在計算機系統中引入資料庫後的系統,一般有資料庫、資料庫管理系統、應用系統、資料庫管理者(DBA)構成,常簡稱資料庫。
資料管理技術是應資料管理任務需要而産生的。資料管理是指對資料進行分類、組織、編碼、存儲、檢索和維護,是資料處理的中心問題。而資料處理時指對各種資料進行收集、存儲、加工和傳播的一系列活動的總和。資料管理經曆了人工管理、檔案系統、資料庫系統3個階段。
資料庫系統的特點:
- 資料結構化:實作整體資料的結構化,也是資料庫系統與檔案系統的本質差別。資料庫中資料不再僅僅針對某一個應用,而是面向全組織,不僅内部是結構化的,而且整體是結構化的。在檔案系統中,檔案内部有某些結構,但檔案間沒有聯系,而關系資料庫中,關系表之間的聯系可用參照完整性來表達。
- 資料共享性高,備援度低,易擴充。
- 資料獨立性高:包括資料的實體獨立性和邏輯獨立性。實體獨立性指使用者的應用程式跟存儲在磁盤上的資料庫中資料是互相獨立的,資料庫中資料存取是由DBMS管理的。資料獨立性是由DBMS的二級映像功能來保證的。
- 資料由DMBS統一管理和控制。
資料模型:是對現實世界資料特征的抽象,是對現實世界的模拟,是資料庫系統的核心和基礎。資料模型應滿足三方面需求:1.真是模拟現實世界;2.容易為人了解;3.便于在計算機上實作。資料模型按應用目的分為兩類:
第一類是概念模型:按使用者觀點對資料和資訊模組化,主要用于資料庫設計,也稱資訊模型。
第二類是邏輯模型和實體模型:邏輯模型是按計算機觀點對資料模組化,主要包括層次模型、網絡模型、關系模型、面向對象模型、對象關系模型;實體模型是對資料最底層的抽象,它描述資料在系統内部的表示方式和存取方法。
資料模型通常由資料結構、資料操作和完整性限制三部分組成,是嚴格定義的一組概念的集合,精确的描述了系統的靜态特寫、動态特性和完整性限制條件。
概念模型用于資訊世界的模組化,是現實世界到資訊世界的第一層抽象,是資料庫設計人員進行資料庫設計的有力的工具,也是設計人員與使用者之間進行交流的語言。資訊世界涉及的概念主要有:
- 實體(Entity):客觀存在并可互相差別的事物成為實體。可以是人、事、物,也可以是抽象的概念和聯系。
- 屬性(Attribute):實體所具有的某一特性。一個實體可以又若幹個屬性來刻畫。
- 碼(Key):唯一辨別實體的屬性集。
- 域(Domain):域是一組具有相同資料類型的值的集合。屬性的取值範圍來自某個域。
- 實體型(Entity Type):具有相同屬性的實體必然具有共同的特征和性質。用實體名和屬性名集合來抽象和刻畫同類實體,稱為實體型。
- 實體集(Entity Set):同一類型實體的集合。
- 聯系(Relationship):實體内部和實體之間的聯系。實體之間的聯系有一對一,一對多、多對多三種。
概念模型的一種表示方法:實體-聯系方法,E-R圖:提供了表示實體型、屬性和聯系的方法:實體型:用矩形表示,矩形框内寫實體名;屬性:用橢圓表示,并用無向邊将其與對應的實體型連接配接起來;聯系:用菱形表示,框内寫明聯系名,并用 無向邊與有關實體型連接配接起來,同時在無向邊上标上聯系的類型(1:1,1:n,m:n)。聯系也可以有屬性。
資料庫的三級模式
1、模式
模式又稱概念模式或邏輯模式,對應于概念級。它是由資料庫設計者綜合所有使用者的資料,按照統一的觀點構造的全局邏輯結構,是對資料庫中全部資料的邏輯結構和特征的總體描述,是所有使用者的公共資料視圖(全局視圖)。它是由資料庫管理系統提供的資料模式描述語言(Data Description Language,DDL)來描述、定義的,展現、反映了資料庫系統的整體觀。
2、外模式
外模式又稱子模式或使用者模式,對應于使用者級。它是某個或某幾個使用者所看到的資料庫的資料視圖,是與某一應用有關的資料的邏輯表示。外模式是從模式導出的一個子集,包含模式中允許特定使用者使用的那部分資料。使用者可以通過外模式描述語言來描述、定義對應于使用者的資料記錄(外模式),也可以利用資料操縱語言(Data Manipulation Language,DML)對這些資料記錄進行。外模式反映了資料庫的使用者觀。
3、内模式
内模式又稱存儲模式,對應于實體級,它是資料庫中全體資料的内部表示或底層描述,是資料庫最低一級的邏輯描述,它描述了資料在存儲媒體上的存儲方式和實體結構,對應着實際存儲在外存儲媒體上的資料庫。内模式由内模式描述語言來描述、定義,它是資料庫的存儲觀。
在一個資料庫系統中,隻有唯一的資料庫, 因而作為定義 、描述資料庫存儲結構的内模式和定義、描述資料庫邏輯結構的模式,也是唯一的,但建立在資料庫系統之上的應用則是非常廣泛、多樣的,是以對應的外模式不是唯一的,也不可能是唯一的。
資料庫的二級映象與資料庫獨立性
1 外模式/模式映象
模式描述的是資料的全局邏輯結構,外模式描述的是資料的局部邏輯結構。當模式改變時,由資料庫管理者對各個外模式/模式的映象作相應改變,可以使外模式保持不變,進而應用程式不必修改,保證了資料與程式的邏輯獨立性,簡稱資料的邏輯獨立性
2 模式/内模式映象
資料庫中隻有一個模式,也隻有一個内模式,是以模式/内模式映象是唯一的,它定義了資料庫全局邏輯結構與存儲結構之間的對應關系。當資料庫的存儲結構改變了,由資料庫管理者對模式/内模式映象作相應改變,可以使模式保持不變,進而應用程式也不必改變。保證了資料與程式的實體獨立性,簡稱資料的實體獨立性。