Professional Documents
Culture Documents
Thiết kế CSDL
Thiết kế CSDL
Thiết kế cơ sở dữ liệu
Hệ thống bài cũ
Thiết kế CSDL 2
Mục tiêu bài học
Thiết kế CSDL 3
Thiết kế CSDL
Thiết kế CSDL 4
Thiết kế CSDL
Thiết kế CSDL 5
Thiết kế CSDL
Thiết kế CSDL 6
Thiết kế CSDL
Thiết kế logic
Dựa trên mô hình dữ liệu mức khái niệm
Gồm 4 bước
Bước 1. Phát triển mô hình dữ liệu mức logic cho mỗi giao
diện sử dụng quy tắc chuyển hóa
Bước 2. Kết hợp các mô hình dữ liệu mức logic xây dựng cho
mỗi giao diện thành một mô hình dữ liệu mức logic hợp nhất
Bước 3. Chuyển ERD thành mô hình dữ liệu mức logic sử
dụ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 7
Thiết kế CSDL
Thiết kế vật lý
Dựa trên kết quả mô hình dữ liệu mức logic
Các công việc chính
Chọn định dạng lưu trữ cho mỗi thuộc tính trong mô hình
CSDL mức logic
Nhóm các thuộc tính từ mô hình CSDL mức logic thành bản
ghi vật lý
Sắ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 8
ÔN LẠI
QUAN HỆ & CHUẨN HÓA
Thiết kế CSDL 9
Mô hình dữ liệu quan hệ
Dữ 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ười
dùng nhập, chỉnh sửa và xóa các bản ghi mà không gây ra
lỗi hay làm mất tính nhất quán
Thiết kế CSDL 10
Quan hệ nào có cấu trúc cao?
Thiết kế CSDL 11
Chuẩn hóa
Thiết kế CSDL 12
Ví dụ trước khi chuẩn hóa
Thiết kế CSDL 13
Ví dụ sau khi chuẩn hóa
Thiết kế CSDL 14
Các dạng chuẩn hóa
Dạng chuẩn 1
Toàn bộ các thuộc tính của quan hệ đều có giá trị đơn
Dạng chuẩn 2
Mỗi thuộc tính không phải là khóa chính sẽ được xác định
bởi khóa chính (được gọi là phụ thuộc hàm đầy đủ – full
functional dependency).
Dạng chuẩn 3
Các thuộc tính không phải khóa chính không phụ thuộc lẫn
nhau (đượ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
Thiết kế CSDL 15
Phụ thuộc hàm
Quá 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
Thiết kế CSDL 16
Chuyển và dạng chuẩn 2
Mộ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óa
chí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ộc
hà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
Thiết kế CSDL 17
Ví dụ chuyển về dạng chuẩn 2
Quan 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)
Thiết kế CSDL 18
Chuyển về dạng chuẩn 3
Thiết kế CSDL 19
Ví dụ chuyển về dạng chuẩn 3
Quan hệ
SALES (Customer_ID, Customer_Name, Salesperson,
Region) Thỏa mãn chuẩn 2
Phụ thuộc hàm
Customer_IDCustomer_Name, Salesperson, Region
SalespersonRegion
Dạng chuẩn 3
SALES1(Customer_ID, Customer_Name, Salesperson)
SPERSON(Salesperson, Region)
Thiết kế CSDL 20
XÂY DỰNG
CSDL MỨC LOGIC
Thiết kế CSDL 21
Bước 1: Phát triển MHDLLG cho mỗi GUI
Thiết kế CSDL 22
Bước 1: Phát triển MHDLLG cho mỗi GUI
Thiết kế CSDL 23
Bước 2: XD MHDLLG hợp nhất
Thiết kế CSDL 24
Bước 3: Chuyển ERD thành MHDLLG
Thiết kế CSDL 25
Bước 4: So sánh và hợp nhất
Thiết kế CSDL 26
CHUYỂN ERD THÀNH
MHDLLG
Thiết kế CSDL 27
Các bước thực hiện
Thiết kế CSDL 28
B1. Biểu diễn thực thể
Thiết kế CSDL 29
B2. Biểu diễn liên kết
Thiết kế CSDL 30
B2. Biểu diễn liên kết
Thiết kế CSDL 31
Ví dụ về liên kết 2 ngôi N-M
Thiết kế CSDL 32
B3. Chuẩn hóa quan hệ
Thiết kế CSDL 33
Bước 4. Hợp nhất quan hệ
Mụ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)
Hợp nhất
EMPLOYEE(Emp_ID, Name, Address, Phone, Jobcode,
Number_of_Years)
Vấn đề nẩy sinh
Đồng nghĩa, đồng âm
Phụ thuộc giữa hai thuộc tính không khóa
Thiết kế CSDL 34
THIẾT KẾ FILE VÀ CSDL
MỨC VẬT LÝ
Thiết kế CSDL 35
Thông tin yêu cầu
Thiết kế CSDL 36
Thiết kế trường
Mỗ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ế CSDL 37
Kiểm soát tính toàn vẹn DL
Thiết kế CSDL 38
Thiết kế bảng vật lý
Bảng vật lý
Là một tập hợp các hàng và cột chỉ ra chính xác các
trường trong mỗi hàng của bảng
Mục tiêu thiết kế
Sử dụng bộ nhớ thứ cấp hiệu quả
Ổ đĩa được chia thành các đơn vị mà được đọc bởi chỉ một
thao tác
Việc đọc hiệu quả nhất khi độ lớn của file vật lý gần bằng
đơn vị lưu trữ
Xử lý dữ liệu hiệu quả
Thực hiện phi chuẩn hóa
Thiết kế CSDL 39
TỔNG KẾT BÀI HỌC
Thiết kế CSDL 40
Tổng kết bài học