MOOC 數據庫系統筆記(一):初步認識數據庫系統

概述

什麼是數據庫

數據庫是電子化信息的集合
數據庫起源於規範化“表(Table)”的處理。
Table:以按行按列形式組織及展現的數據。
E.F.Codd,基於對“表(Table)”的理解:
1.提出了“關係”及關係模型。
2.提出了關係數據庫理論
3.開創了數據庫的時代
4.當前普遍應用的數據庫管理系統的奠基者
5.獲得圖靈獎

表的構成和表的常見術語。

1.表名
2.表標題(格式)
表名加表標題合在一起稱爲(關係)模式
3.表內容(值)
表名加表標題加表內容合在一起稱爲(表/關係)
4.表的一行稱爲:行/元組/記錄(row/tuple/record)
5.表的一列稱爲:列/字段/屬性/數據項(column/field/attribute/data item)
數據庫即爲相互有關聯的若干Table的集合

由表構成的數據庫稱爲關係數據庫(結構化數據庫),除了關係數據庫還有圖像數據庫,工程數據庫等等(非結構化數據庫)。。

什麼是數據庫系統

數據庫系統的構成

1.數據庫(DB):Database
2.數據庫管理系統(DBMS):Database Management System
3.數據庫應用(DBAP):DataBase Application
4.數據庫管理員(DBA):DataBase Administraor
5.計算機基本系統

什麼是數據庫管理系統

用戶:數據庫管理系統應具有什麼功能?

數據庫定義功能

定義數據庫中Table的名稱、標題(內含的屬性名稱及對該屬性的值的要求)等
1.DBMS提供一套數據定義語言(DDL:Data Definition Language)給用戶
2.用戶使用DDL描述其所要建立的表的格式
3.DBMS依照用戶的定義,創建數據庫及其中的Table

數據庫操縱

向數據庫的Table中增加/刪除/更新數據及對數據進行查詢、檢索、統計等操作
1.DBMS提供一套數據庫操縱語言(DML:Data Maniputation Language)給用戶
2.用戶使用DML描述其所要進行的增、刪、改、查等操作
3.DBMS依照用戶的操作描述,實際執行這些操作

數據庫控制

控制數據庫中數據的使用---哪些用戶可以使用,哪些不可以
1.DBMS提供一套數據庫操縱語言(DCL:Data Control Language)給用戶
2.用戶使用DCL描述其對數據庫所要實施的控制
3.DBMS依照用戶的操作描述,實際執行這些操作

數據庫維護

轉儲/恢復/重組/性能監測/分析。。。
數據庫維護的實時程序,一般都是由數據庫管理員(DBA)來使用和掌握的

數據庫語言

使用者通過數據庫語言利用DBMS操作數據庫
DDL,DML,DCL
具體如上。
這些語言統稱爲SQL語言:結構化的數據庫語言
數據庫語言與高級語言:
一條數據庫語言相當於高級語言的一個或多個循環程序:
數據庫語言(標準的:SQL語言)
Select 學號,姓名From 學生登記表 Where 性別='男';
相當於高級語言中的:
For K=1 to 最後一條記錄
讀第K條語句
if性別=男
輸出
Endif
Next K
數據庫語言可以嵌入到高級語言(宿主語言)中使用。

系統:數據庫管理系統應具有什麼功能?

解析語言並執行的系統-數據庫管理系統。
1.編譯與執行控制
2.查詢優化實現
3.存儲於索引
4.事務處理
5.其他(各種)控制程序
DBMS爲完成DB管理實際上在後臺運行着一系列程序。
1.語言編譯器:將用數據庫語言書寫的內容,翻譯成DBMS可以執行的命令。
例如:DDL編譯器,DML編譯器,DCL編譯器;
2.查詢優化(執行引擎)與查詢實現(基於命令的不同執行算法):提高數據庫檢索速度的手段;例如貫穿於數據存取各個階段的優化程序。
3.數據存取與索引:提供數據在磁盤、磁帶上的高效存取手段。例如:存儲管理器,緩衝區管理器,索引/文件和記錄管理器等;
4.通信控制:提供網絡環境下數據庫操作與數據傳輸的手段。
還有事務管理、故障恢復、安全性控制、完整性控制等等。。
典型的數據庫管理系統(DBMS)
Oracle
DB 2(IBM)
Sybase
MS SQL Server
MS Access
MS Foxpro
.......

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章