資料庫筆記(I)-資料庫簡介+ ERD(I)

最近學資料庫,無意間發現以前母校有資料庫課程。假如大學時候就有這些課程,那我一定會去修,不過當時還沒有巨資學院,這些程式、資料庫相關的課程相對少,巨資學院在我剛畢業時才剛成立,這讓人有種生不逢時的感覺。此筆記整理自東吳大學黃福銘老師的數位課程,覺得教得觀念很清楚。

A. 資料庫定義:

廣義:資料庫是儲存資料的地方

狹義:資料庫是一群相關資料的集合體

儲存、新增、修改、刪除、查詢

優點:降低資料重複性、達成資料一致性、共享性、獨立性、完成性、安全性、避免紙張與空間浪費、達成資料安全性。

B. 資料庫系統(DBS)

資料庫(DB)、資料庫管理系統(DBMS)、資料庫系統(DBS = DB + DBMS)、資料庫管理師(DBA)

C. 資料庫管理系統功能

  1. 資料的定義 (Data Define)
  2. 資料的操作 (Data Manipulation)
  3. 重複性的控制 (Redundancy Control)
  4. 複雜關係的表示 (Multi-Relationship)
  5. 實施完整性限制 (Integrity Constrain)
  6. 備份 (Backup)
  7. 回復 (Restore)

D. 關聯式資料庫元素的階層( 小 => 大 )

位元(Bit) => 字元(Byte) => 資料欄(Field) => 資料錄(Record) => 資料表 (Table) => 資料庫 (Data Base)

E. 資料庫設計程序(階段)

  1. 資料庫需求收集 & 分析
  2. 資料庫概念設計
  3. 選擇資料庫系統
  4. 資料庫邏輯設計:

ERD實體關係圖、概念資料模型。

資料庫模型:階層式、網路式、關聯式、物件式、非關聯式

5. 資料庫實體設計

F. 資料庫系統架構分類

  1. 單機架構(Standalone)
  2. 主從式架構(Client-Server)
  3. 三層式架構(3-Tier)
  4. 分散式架構(Distributed)

G. ER關係圖(Entity Relationship Diagram / Model)

  1. 定義:用來描述實體與實體間關係圖的工具

2. 實體:用以描述真實世界的物件,可含有多個屬性來描述該實體,在關聯式資料庫用資料表欄位來表示屬性。 e.g. 學生、課程、老師、員工、產品、服務。

2–1. 強實體:不需要依附其他實體而存在的實體 e.g.會員、課堂

2–2. 弱實體:需要依附其他實體而存在的實體 e.g. 會員年齡、課堂參加名單

3. 關係:用來表示一實體與另一個時間關聯的方式。e.g. 一對一、一對多、多對多。

ER Model 優點

  1. 圖形化表示方式
  2. 容易被非技術人員了解
  3. 設計者與使用者溝通的橋樑

ER圖物件符號

  1. 實體(Entity): 用以描述真實世界的物件。
  2. 屬性(Attribute): 用來描述實體的性質。
  3. 鍵值(Key): 用來辨認某一實體集合中的每一個實體的唯一性。
  4. 關係(Relationship): 用來表示一個實體與另一個實體關聯的方式。

以上是前面幾堂課的內容。

後續會再繼續學習資料庫架構與SQL語法

參考資料:

  1. 資料庫導論(數位課程) — 東吳大學黃福銘老師

Web Develop X Investor X Traveller 經濟系畢業。誤打誤撞開始從事網頁開發,熱愛分享學習知識及生活啟發。 關於我:https://chun-wei.com 聯絡信箱:jinwei@chun-wei.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store