一、数据库系统概述
一、基本概念
1、數據(Data):數據是數據庫中存儲的基本對象,是描述事物的符號記錄。
比如:數值、文字、圖形、圖像、聲音等;
注意:數據與語義是分不可開的,例如:
數值:100?
語義:如成績是100分;價格是100元;時間是100秒;
2、數據庫(Database,DB):存儲數據的倉庫;是長期存儲在計算機內的,有組織的,可共享的,大量的數據的集合。
數據庫的好處:1.持久化數據到本地 2.可以實現結構化查詢,方便管理
3、數據庫管理系統(Database?Management System,DBMS):用于用戶和OS(操作系統)之間的一層管理數據的軟件。
常用的DBMS有:SQL Server,Oracle,MySQL,DB2等;
4.SQL:結構化查詢語言,用于和DBMS通信的語言。
DBMS的功能:
(1)數據定義語言(DDL):創建(create?)、 修改(alter??)、 刪除(drop)數據庫對象,是對數據庫進行的操作;? ??
(2)數據操縱語言(DML):向數據庫中插入數據(insert)、修改數據(update)、刪除數據(delete),是對數據進行的操作;
(3)數據查詢語言(DQL):查詢(select)數據庫中的數據;
(4)數據控制語言(DCL):管理用戶的權限。如:授權(grant)、撤銷權限(revoke);
(5)事務控制語言(TCL):管理事務、提交事務(?commit )、回滾事務(rollback);
(6)數據庫的維護、運行管理:并發控制,備份與恢復,性能監視;
4、數據庫系統(Database System,DBS):?在計算機系統中引入了數據庫后的系統。
由DB、DBMS、應用程序開發工具、應用系統、數據庫管理員(DBA)、用戶構成。
?5、數據庫管理員(DBA):專門管理數據庫相關事宜的人員;
6、數據庫存儲數據的特點:
1)將數據放到表中,表再放到庫中;
2)一個數據庫中可以有多個表,每個表都有一個的名字,用來標識自己。表名具有唯一性;
3)表具有一些特性,這些特性定義了數據在表中如何存儲,類似java中 “類”的設計;
4)表由列組成,我們也稱為字段。所有表都是由一個或多個列組成的,每一列類似java 中的”屬性”;
5)表中的數據是按行存儲的,每一行類似于java中的“對象”。
二、數據管理技術的發展
1、人工管理階段
主要用于科學計算;沒有直接存儲設備,沒有OS,數據不共享;
2、文件系統階段
有存儲設備,有OS,數據共享性差、冗余度大(導致數據不一致),數據獨立性差;
數據的獨立性:當數據的結構(邏輯結構/物理結構)發生改變,應用程序如果不需要修改,稱數據的獨立性高。
邏輯獨立性:應用程序與數據的邏輯結構
物理獨立性:應用程序與數據的物理結構
3、數據庫系統階段:數據結構化,數據共享,數據獨立性高,數據同一由DBMS管理和控制;
數據庫既存儲數據、還存儲數據之間的聯系。
?
三、三級模式、兩級映像
為什么通過數據庫管理數據,數據的獨立性高?
1、三級模式:模式、外模式、內模式;
模式(External?Schema):(相當于表的列標題) 描述全體數據的集合(基本表),只有1個。
| 學生:學號,姓名,性別,所在系,年齡,家長電話 課程:課程號,課程名,學分 教師:教師號,教師姓名,職稱,年齡,研究方向 選課:學號,課程號,成績 |
外模式:是模式的子集(視圖),可以有多個。
| 查詢成績:學號,姓名,教師姓名,課程名,成績 查詢導師:教師姓名,職稱,研究方向 |
內模式:物理存儲結構(順序存儲、B樹結構存儲、HASH方法存儲)(索引),只有1個;
2、兩級映像:外模式/模式映像;模式/內模式映像
外模式/模式映像:保證數據的邏輯獨立性
模式/內模式映像:保證數據的物理獨立性
總結
- 上一篇: Windows API一日一练 17 D
- 下一篇: 复旦计算机系统基础课件,复旦大学软件工程