Dữ liệu được trình bày như một tập các bảng có liênquan với nhau hay còn gọi là một quan hệ Mỗi quan hệ là một bảng 2 chiều gồm các hàng và cột Một quan hệ có cấu trúc cao khi Lượng dữ l
Trang 1Bài 6:
Thiết kế cơ sở dữ liệu
Trang 2Hiểu về mô hình dữ liệu mức khái niệm
Ôn lại kiến thức ERD
Trang 3Ôn lại kiến thức về quan hệ và chuẩn hóa
Thiết kế CSDL mức logic
Thiết kế CSDL mức vật lý
Mục tiêu bài học
Trang 4Thiết kế CSDL
Thiết kế CSDL 4
Trang 5Thiết kế CSDL
Trang 6Thiết kế CSDL
mức logic Thiết kế CSDL mức vật lý
Thiết kế CSDL
Thiết kế CSDL 6
Trang 7dụng quy tắc chuyển hóa Bước 4 So sánh mô hình dữ liệu mức logic hợp nhất với mô hình dữ liệu được chuyển từ ERD để tạo nên mô hình dữ liệu mức logic cuối cùng
Thiết kế CSDL
Trang 8Sắp xếp các bản ghi liên quan đến nhau trên bộ nhớ thứ cấp
để các bản ghi có thể lưu trữ, truy cập và cập nhật nhanh chóng
Chọn phương tiện và cấu trúc lưu trữ dữ liệu để truy cập hiệu quả
Thiết kế CSDL
Thiết kế CSDL 8
Trang 9ÔN LẠI QUAN HỆ & CHUẨN HÓA
Trang 10Dữ liệu được trình bày như một tập các bảng có liên
quan với nhau hay còn gọi là một quan hệ
Mỗi quan hệ là một bảng 2 chiều gồm các hàng và cột
Một quan hệ có cấu trúc cao khi
Lượng dữ liệu dư thừa ở mức tối thiểu và cho phép ngườidùng nhập, chỉnh sửa và xóa các bản ghi mà không gây ralỗi hay làm mất tính nhất quán
Mô hình dữ liệu quan hệ
Thiết kế CSDL 10
Trang 11Quan hệ nào có cấu trúc cao?
Trang 12Chuẩn hóa (normalization) là quy trình biến đổi những
cấu trúc dữ liệu phức tạp thành những cấu trúc dữ liệu
Trang 13Ví dụ trước khi chuẩn hóa
Trang 14Ví dụ sau khi chuẩn hóa
Thiết kế CSDL 14
Trang 15Dạng chuẩn 3
Các thuộc tính không phải khóa chính không phụ thuộc lẫnnhau (được gọi là không chứa phụ thuộc bắc cầu – no
transitive dependencies)
Kết quả sau dạng chuẩn 3
Tất cả các thuộc tính không khóa đều phụ thuộc hoàn
toàn vào khóa chính
Các dạng chuẩn hóa
Trang 16Quá trình chuẩn hóa được tiến hành dựa trên việc phân tích các phụ thuộc hàm
Phụ thuộc hàm (functional dependency) là một dạng
quan hệ đặc trưng giữa hai thuộc tính Với một quan hệ cho trước, thuộc tính B được gọi là phụ thuộc hàm trên thuộc tính A nếu như, với mọi giá trị hợp lệ của A, giá trị
đó của A xác định duy nhất giá trị của B
Sự phụ thuộc hàm của B vào A được kí hiệu là: AB
Phụ thuộc hàm
Thiết kế CSDL 16
Trang 17Một quan hệ đạt dạng chuẩn 2 khi thỏa mãn một trong các điều kiện sau:
DK1: Khóa chính chỉ gồm một thuộc tính duy nhất
DK2: Trong quan hệ không có thuộc tính không phải khóachính nào tồn tại
DK3: Mọi thuộc tính không phải khóa chính đều phụ thuộchàm đầy đủ vào các thuộc tính khóa chính
Chuyển quan hệ thành dạng chuẩn 2
Phân rã quan hệ thành các quan hệ mới sử dụng thuộc
tính có thể xác định các thuộc tính khác
Thuộc tính xác định trở thành khóa chính của quan hệ mới
Chuyển và dạng chuẩn 2
Trang 18Quan hệ EMPLOYEE2
EMPLOYEE2(Emp_ID, Name, Dept, Salary, Course,
Date_Completed)
Phụ thuộc hàm trong quan hệ này là
Emp_IDName, Dept, Salary
Emp_ID, CourseDate_Completed
Chuyển về dạng chuẩn 2
EMPLOYEE1(Emp_ID, Name, Dept, Salary)
EMP COURSE(Emp_ID, Course, Date_Completed)
Ví dụ chuyển về dạng chuẩn 2
Thiết kế CSDL 18
Trang 19Một quan hệ là ở dạng chuẩn ba (third normal form
-3NF) nếu như nó ở dạng chuẩn hai và không có phụ
thuộc hàm nào giữa bất kỳ hai (hay nhiều) thuộc tính
không phải khóa chính
Chuyển về dạng chuẩn 3
Phân ra quan hệ đó thành 2 quan hệ sử dụng thuộc tínhquyết định
Chuyển về dạng chuẩn 3
Trang 20Quan hệ
SALES (Customer_ID, Customer_Name, Salesperson,
Region) Thỏa mãn chuẩn 2
Trang 21XÂY DỰNG CSDL MỨC LOGIC
Trang 22Bước 1: Phát triển MHDLLG cho mỗi GUI
Thiết kế CSDL 22
Trang 23Bước 1: Phát triển MHDLLG cho mỗi GUI
Trang 24Bước 2: XD MHDLLG hợp nhất
Thiết kế CSDL 24
Trang 25Bước 3: Chuyển ERD thành MHDLLG
Trang 26Bước 4: So sánh và hợp nhất
Thiết kế CSDL 26
Trang 27CHUYỂN ERD THÀNH
MHDLLG
Trang 28Biểu diễn thực thể
Biểu diễn liên kết
Chuẩn hóa quan hệ
Hợp nhất quan hệ
Các bước thực hiện
Thiết kế CSDL 28
Trang 30Liên kết 2 ngôi 1-N
Thêm thuộc tính khóa chính của thực thể ở bên một củaliên kết vào thành khóa ngoại trong quan hệ của thực thểbên nhiều của liên kết
B2 Biểu diễn liên kết
Thiết kế CSDL 30
Trang 31Liên kết 1 ngôi hay 2 ngôi 1:1
Thêm khóa chính của A thành khóa ngoại của B
Thêm khóa chính của B thành khóa ngoại của A
Cả hai cách trên
Liên kết 2 ngôi hoặc cao hơn bậc N:M
Tạo một quan hệ khác, khóa chính của quan hệ này là
khóa phức được tạo nên từ các khóa chính của cả hai
thực thể trong liên kết
B2 Biểu diễn liên kết
Trang 32Ví dụ về liên kết 2 ngôi N-M
Thiết kế CSDL 32
Trang 33Dựa theo các quy tắc chuyển hóa
B3 Chuẩn hóa quan hệ
Trang 34Mục đích
Loại bỏ quan hệ dư thừa
Ví dụ về hợp nhất quan hệ:
Quan hệ trong khung nhìn thứ nhất
EMPLOYEE1(Emp_ID, Name, Address, Phone)
Quan hệ trong khung nhìn thứ hai
EMPLOYEE2(Emp_ID, Name, Address, Jobcode, Number_of_Years)
Trang 35THIẾT KẾ FILE VÀ CSDL
MỨC VẬT LÝ
Trang 36Để thiết kế file và CSDL mức vật lý cần có những thông tin sau:
Các quan hệ đã được chuẩn hóa, bao gồm cả các ước tính
về lượng dữ liệu của chúng
Định nghĩa của từng thuộc tính
Mô tả khi nào và trong trường hợp nào thì dữ liệu được
nhập, truy xuất, xóa và cập nhật (bao gồm cả tần suất
Trang 37Mỗi thuộc tính trong quan hệ sẽ được biểu diễn bởi một hoặc nhiều trường
Chọn kiểu DL nhằm thỏa mãn
Tối thiểu không gian lưu trữ
Trình bày tất cả các giá trị của trường
Tăng tính toàn vẹn cho dữ liệu
Hỗ trợ tất cả các thao tác của DL
Thiết kế trường
Trang 38Giá trị mặc định
Mặt nạ nhập liệu
Kiểm soát khoảng giá trị
Toàn vẹn tham chiếu
Kiểm soát giá trị null
Kiểm soát tính toàn vẹn DL
Thiết kế CSDL 38
Trang 39Xử lý dữ liệu hiệu quả
Thực hiện phi chuẩn hóa
Thiết kế bảng vật lý
Trang 40Thiết kế CSDL 40
TỔNG KẾT BÀI HỌC
Trang 41Thiết kế CSDL gồm 2 bước: thiết kế CSDL logic và thiết
kế CSDL vật lý
Thiết kế CSDL gồm 4 bước:
Xây dựng quan hệ từ GUI
Hợp nhất các quan hệ thành CSDL mức logic
Chuyển ERD thành quan hệ CSDL mức logic
So sánh 2 CSDL mức logic và xây dựng CSDL mức logic
Trang 42Thiết kế biểu mẫu và báo cáo
Thiết kế giao diện và hội thoại
Thiết kế menu
Workshop 5
Phân tích hệ thống về dữ liệu 42
Trang 43HẾT BÀI !!!!