資料庫系統概論第 十三章 專題研討 - 課務管理系統   上一頁    

13-3 E-R 圖轉換成資料表

內容:

完成系統分析並繪製 E-R 關係圖完成之後,接下來必須將各個實體或關係轉換為資料表,在轉換過程中也順便分析它是否滿足 3NF 正規化。

13-3-1 學生資料表 - students

學生實體的 E-R 圖如下:

取名為『學生資料表』(students),並選擇學號為主鍵。各個欄位名稱與資料型態如下所示:

學生資料表

學號

姓名

班級代碼

性別

地址

電話

電子郵件

Student_ID

name

Class_ID

sex

address

tel

mailbox

CHAR(10)

CHAR(10)

CHAR(10)

CHAR(5)

CHAR(50)

CHAR(10)

CHAR(20)

正規化分析:

  • 1NF:所有欄位都是最小單元(Atomic value)符合

  • 2NF:除了主鍵外,所有欄位都與主鍵相依。符合

  • 3NF:除了主鍵外,所有欄位之間都沒有功能性相依。符合

13-3-2 教師資料表 - teachers

教師實體的 E-R 圖如下:

取名為『教師資料表』(teachers),並選擇教師代碼為主鍵。各個欄位名稱與資料型態如下所示:

示:

教師資料表

教師代碼

姓名

系別代碼

性別

職務

地址

電話

電子郵件

Teacher_ID

name

Dep_ID

sex

title

address

Tel

mailbox

CHAR(10)

CHAR(10)

CHAR(10)

CHAR(5)

CHAR(20)

CHAR(50)

CHAR(10)

CHAR(20)

正規化分析:

  • 1NF:所有欄位都是最小單元(Atomic value)符合

  • 2NF:除了主鍵外,所有欄位都與主鍵相依。符合

  • 3NF:除了主鍵外,所有欄位之間都沒有功能性相依。符合

13-3-3 系所資料表 - department

系所實體的 E-R 圖如下:

取名為『系別資料表』(department),並選擇系所代碼為主鍵。各個欄位名稱與資料型態如下所示:

系別資料表

系所代碼

系別名稱

Dep_ID

Dep_name

CHAR(10)

CHAR(10)

正規化分析:

  • 1NF:所有欄位都是最小單元(Atomic value)符合

  • 2NF:除了主鍵外,所有欄位都與主鍵相依。符合

  • 3NF:除了主鍵外,所有欄位之間都沒有功能性相依。符合

13-3-4 班級資料表 - classes

班級實體的 E-R 圖如下:

取名為『班級資料表』(classes),並選擇『班級代碼』(class_ID)為主鍵。各個欄位名稱與資料型態如下所示:

班級資料表

班級代碼

班級名稱

系別代碼

入學年度

Class_ID

Class_name

Dep_ID

year

CHAR(10)

CHAR(10)

CHAR(10)

int

正規化分析:

  • 1NF:所有欄位都是最小單元(Atomic value)符合

  • 2NF:除了主鍵外,所有欄位都與主鍵相依。符合

  • 3NF:除了主鍵外,所有欄位之間都沒有功能性相依。符合

13-3-5 課程資料表all_course

課程實體的 E-R 圖如下:

取名為『課程資料表』(all_course),並選擇『課程代碼』(course_ID)為主鍵。各個欄位名稱與資料型態如下所示:

態如下所示:

課程資料表

課程代碼

課程名稱

系別代碼

必選修

學分數

Course_ID

Course_name

Dep_ID

required

credit

CHAR(10)

CHAR(10)

CHAR(10)

CHAR(5)

int

正規化分析:

  • 1NF:所有欄位都是最小單元(Atomic value)符合

  • 2NF:除了主鍵外,所有欄位都與主鍵相依。符合

  • 3NF:除了主鍵外,所有欄位之間都沒有功能性相依。符合

13-3-6 開課資料表open_course

開課實體的 E-R 圖如下:

取名為『開課總表』(open_course),並選擇『開課代碼』(open_course_ID)為主鍵。各個欄位名稱與資料型態如下所示:

開課總表

開課代碼

課程代碼

班級代碼

教師代碼

Open_course_ID

Course_ID

Class_ID

Teacher_ID

CHAR(10)

CHAR(10)

CHAR(10)

CHAR(10)

正規化分析:

  • 1NF:所有欄位都是最小單元(Atomic value)符合

  • 2NF:除了主鍵外,所有欄位都與主鍵相依。符合

  • 3NF:除了主鍵外,所有欄位之間都沒有功能性相依。符合

13-3-7 選課資料表select_course

選課實體的 E-R 圖如下:

取名為『選課總表』(select_course),並選擇『學號』(student_ID)與『開課代碼』(open_course_ID)為複合主鍵。各個欄位名稱與資料型態如下所示:

選課總表

學號

開課代碼

分數

Student_ID

Open_course_ID

final

CHAR(10)

CHAR(10)

int

正規化分析:

  • 1NF:所有欄位都是最小單元(Atomic value)符合

  • 2NF:除了主鍵外,所有欄位都與主鍵相依。符合

  • 3NF:除了主鍵外,所有欄位之間都沒有功能性相依。符合

13-3-8 所有表格關聯圖

完成各資料表設計之後,接下來繪出所有資料表之間的關聯圖,如下:

翻轉工作室:粘添壽

 

資料庫系統概論(含邏輯設計)

 

 

翻轉電子書系列: