数据库基本知识
數據庫系統概述
數據庫系統由計算機科學與軟件工程學科的核心課程組成,由IEEE/ACM組織聯合制定的計算機類課程。在CS2013課程中由18個知識領域,信息管理是重中之重,信息管理的核心即---------數據庫系統。
社會業務區分來看數據庫的應用:
兩種業務實現方式大不相同,傳統社會的業務工作是基于紙張與口頭交流的方式,而現代社會的業務是基于計算機(Internet、數據庫)來完成工作。
數據庫在現代社會中占由重要地位,在大數據時代、大數據環境,基于數據庫的應用是大數據,大數據時代–一切以數據說話,Everything Over DB。數據庫不僅是一種技術,也是一種思維,要學習將各種數據集中起來,形成數據庫,實現數據積累,要懂得如何應用數據,如何實現積累的收益,需要掌握數據庫的管理與控制。
那么學習數據庫系統專業核心課程,就是需要我們練習、練習,不斷的練習,不斷地進行知識的學習與技能的訓練。
數據庫
數據庫(Database ) ,簡稱DB,DB數據的集合與有關聯關系的表(table)的集合都稱之為數據庫。
數據庫的起源
說到數據庫的起源,不得不提表(table),在數據庫中Table極為重要,數據庫就是基于對表的分析,E.F.Codd則是數據庫的奠基人,他基于對表的理解,
我們現在普遍應用的數據庫管理系統(Oracle、Sybase、DB2、MySQL)都是基于關系模型的數據庫,固E.F.Codd被稱為數據庫管理系統的奠基者,也因此他獲得了計算機領域最高獎-------圖靈獎。
表—Table
相互之間有關聯關系的數據集合稱為Table,table的內容包含: 表名、表標題、表內容、行、列等。
數據庫
相互之家有關聯關系的數據集合稱為Table,相互之間有關聯關系的Table集合稱為數據庫。
數據庫是對Table的管理,Table數據庫也稱為關系數據庫,關系數據庫又叫結構化數據庫,關系數據庫的使用包含:數據庫設計、數據庫應用程序開發、數據庫存取與控制。
當然,除了關系數據庫還有圖像、工程等非結構化數據庫,面向對象、XML、NOSQL等其他數據庫。
數據庫系統
數據庫系統要素構成:
,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM5Njg5NzEx,size_16,color_FFFFFF,t_70)
數據庫管理系統(DBMS)是管理數據庫的軟件系統,由數據庫管理員(DBA)通過數據庫語言(SQL)來使用、管理、操縱數據庫系統。
普通用戶對數據庫了解不深,為了讓不同用戶能使用數據庫,達到不同的目的,DBA需要根據不同需求開發不同的數據庫應用程序。
這時,普通用戶可以通過數據庫應用程序,經過數據庫管理系統,來達到使用數據庫的目的。
數據庫系統之圖書管理系統
圖書管理數據庫系統實現條件:
DB實例化與抽象化:
抽象分為:理解、區分、命令、表達。
在計算機環境中,由各種Table組成數據庫(DB),數據庫管理員(DBA)通過數據庫管理系統(DBMS)管理數據庫,DBA開發出DBAP供用戶使用。用戶通過DBAP,經過DBMS來使用DB。
數據庫管理系統
從用戶角度看數據庫管理系統的功能:
數據庫定義:定義數據庫的table的名稱、標題等。
DBMS定義一套數據定義語言(DDL)給用戶,用戶使用DDL描述其索要建立表的格式,DBMS依照用戶的定義,創建數據庫及其中的TABALE。
數據庫的操縱:表定義完,向數據庫的TABLE增刪改查等。
DBMS提供一套數據庫操縱語言(DML)給用戶,用戶使用DML描述其所要進行的增刪改查等操作,DBMS依照用戶的操作描述,實際執行這些操作。
數據庫控制:控制數據庫中數據的使用,定義用戶查看權限。
DBMS提供一套數據控制語言(DCL)給用戶,用戶使用DCL描述其要對數據庫所實施的控制,DBMS依照用戶的描述,進行實際控制。
數據庫維護:轉儲、恢復、重組、性能監測、分析
DBMS提供一系列程序(實用程序)給用戶(DBA),在這些程序中提供了對數據庫維護的各種功能,DBA使用這些程序對數據庫維護操作。
數據庫語言
使用者通過數據庫語言利用DBMS操作數據庫。
SQL語言:結構化的數據庫語言
數據庫各種操作的執行:DBMS 按用戶要求進行定義、操縱、控制和維護。
數據庫語言與高級語言差別:一條數據庫語句相當于高級語言的一個或多個循環程序。
數據庫語言可以嵌入到高級語言(宿主語言)中使用。
*從系統角度看數據庫管理系統
數據庫管理系統(從系統角度看):解析語言并執行的系統就是數據庫管理系統。
典型的數據庫管理系統:
Oracle
DB2
Sybase
My SQL
重點與難點:
一組概念的區分:三級模式兩層映像,物理獨立性和邏輯獨立性
一組概念的區分:數據>模式>數據模型
幾種數據模型的差異:網狀/層次模型>關系模型>OO數據模型
數據庫系統的分層結構–典型數據庫的結構抽象
三級模式:
DBMS管理數據的三個層次
從結構角度叫模式,從數據角度叫視圖。
外模式/用戶模式
External Level = User Level 外部層次-用戶層次,某一個用戶能看到與處理的數據,全局數據中的某一部分(某個映射)。
概念模式/全局模式
Conceptual Level = Legic level 全局層次/概念層次/邏輯層次,從全局角度理解或管理的數據,含相應的關聯約束。
內模式/物理模式/存儲模式
Internal Level = Physical level 內部層次,反應存儲在介質上的數據,含存儲路徑、存儲方式、索引方式等。
數據 與 數據的結構----模式(schema)
模式—指的是對數據庫中數據所進行的一種結構性的描述,所觀察到的數據的結構信息。
視圖/數據是某種表現形勢下表現出來的數據庫中的數據。
兩層映像:
E-C maping EC映像,是外模式到概念模式的映像,將外模式映射為概念模式,從而實現數據概念視圖向外部視圖的轉換,便于用戶觀察與使用。
C-I maping CI映像, 概念模式到內模式的映像, 將概念模式映射為內模式,從而支持實現數據概念視圖向內部視圖的轉換,便于計算機進行存儲和處理。
數據庫標準結果:三級模式與兩層映像。
開發時可以使用高級語言,針對外部視圖進行。
邏輯數據獨立性
當概念模式變化時,可以不改變外部模式(只改變E-C mapping),從而無需改變應用程序。
物理數據獨立性
當內部模式變化時,可以不改變概念模式(只需改變C-I mapping),從而不改變外部模式。
數據模型
研究數據庫一定要研究它的數據模型,首先區分數據模型、模式、數據三種區別。
數據模型:規定模式統一描述方式的模型,包括:數據結構、操縱、約束,數據模型是對模式本身結構的抽象,模式是對數據本身結構形式的抽象。比如:關系模型,所有模式都可以抽象為表的形式,而每一個具體的模式都是擁有不同列名的具體的表
三大數據模型:關系模型(表)、層次模型(樹)、網狀模型(圖),基于不同的數據結構建立不同的模型,。
關系模型概念
關系模型最早由E.F Codd在1970年提出,關系模型是從表及表的處理方式中抽象出來的,是在對傳統表及其操作進行數學化嚴格定義基礎上,引入集合理論和邏輯學理論提出的。
關系模型是數據庫的三大經典模型之一,也是現在大多數商品化數據庫系統仍然使用的數據模型。
SQL語言是標準的數據庫語言 ,它是建立在關系模型基礎之上的,數據庫領域的眾多理論也是建立在關系模型之上。
關系模型是什么?形象的說,一個關系就是一個table,關系模型就是處理table的,它由三部分組成:關系模型三要素
學習關系模型就是學習表如何描述、有哪些操作、結果是什么、有哪些約束等。
關系模式是關系的結構,關系是關系模式某一時刻的數據。
本篇文章學習課程記錄的筆記,僅供復習參考,https://www.icourse163.org/course/HIT-1001554030
總結
- 上一篇: html 简单动画效果,HTML-简单动
- 下一篇: linux cmake编译源码,linu