Dạng chuẩn và chuẩn hóa cơ sở dữ liệu

  • 1. HÓA CƠ SỞ DỮ LIỆU GVHD: Ths. Hòa Lê 1
  • 2. là gì? Cho ví dụ. - Khóa của quan hệ(primary key) là (một nhóm) thuộc tính của quan hệ cho phép xác định mỗi bộ khác nhau trong quan hệ. - Một PRIMARY KEY là một trường trong một bảng mà nhận diện một cách duy nhất mỗi hàng/bản ghi trong một bảng dữ liệu. Các PRIMARY KEY phải chứa các giá trị duy nhất. Một cột là PRIMARY KEY không có giá trị NULL. - Một bảng có thể chỉ có một PRIMARY KEY, mà gồm một trường đơn hay nhiều trường. 2
  • 3. điều kiện và quy tắc chuẩn hóa First Normal Form (1NF): Dạng chuẩn 1NF? Các dạng chuẩn được sắp xếp theo thứ tự thấp đến cao. Để chuẩn hóa 2NF thì cơ sở dữ liệu của bạn phải đạt chuẩn 1NF, tương tự để đạt chuẩn 3NF thì phải đạt chuẩn 1NF và 2NF. Và chuẩn Boyce-Codd sẽ bao gồm 3 loại chuẩn 1NF, 2NF và 3NF Định nghĩa: Một bảng (quan hệ) được gọi là ở dạng chuẩn 1NF nếu và chỉ nếu toàn bộ các miền giá trị của các cột có mặt trong bảng (quan hệ) đều chỉ chứa các giá trị nguyên tử (nguyên tố) 1NF (First Normal Form) 3
  • 4. của bảng phải là nguyên tố Giá trị của các thuộc tính trên các hàng phải là đơn trị, không chứa nhóm lặp Không có một thuộc tính nào có giá trị có thể tính toán được từ một thuộc tính khác 4
  • 5. tính lặp trong bảng như: customer_name, phone ra thành một bảng mới là customers +Tách address thành một bảng riêng có khóa là customer_id để biết địa chỉ đó thuộc về customer nào. +Loại bỏ thuộc tính total_amount. 5
  • 6.
  • 7. bày điều kiện và quy tắc chuẩn hóa Second Normal Form (2NF): dạng chuẩn 2NF? v Điều kiện: Một quan hệ ở dạng chuẩn 2NF nếu quan hệ đó: - Là 1NF. - Các thuộc tính không khoá phải phụ thuộc hàm đầy đủ vào khoá chính. VÍ DỤ  Nhận xét: Một quan hệ ở dạng chuẩn 2NF nếu thoả mãn 1 trong các điều kiện sau: - Khoá chính chỉ gồm một thuộc tính. - Bảng không có các thuộc tính không khoá. - Tất cả các thuộc tính không khoá phụ thuộc hoàn toàn vào tập các thuộc tính khoá chính. 7
  • 8. 1: Cho quan hệ R = (ABCD) , khoá là AB và tập phụ thuộc hàm F = {AB -> C, AB -> D}là quan hệ đạt chuẩn 2NF. Ví dụ 2: Cho quan hệ R = (ABCD) , khoá là AB và tập phụ thuộc hàm. F = {AB -> C, AB -> D, B -> DC} là quan hệ không đạt chuẩn 2NF vì có phụ thuộc hàm B -> DC là phụ thuộc hàm bộ phận (phụ thuộc hàm không đầy đủ) vào khoá. Khi đó ta đưa về dạng chuẩn 2NF như sau: 8
  • 9. bỏ các thuộc tính không khóa phụ thuộc vào một bộ phận khóa chính và tách ra thành một bảng riêng, khóa chính của bảng là bộ phận của khóa mà chúng phụ thuộc vào. v Quy tắc chuẩn hóa từ chuẩn 1NF thành 2NF: Bước 2: Các thuộc tính còn lại lập thành một quan hệ, khóa chính của nó là khóa chính ban đầu. 9
  • 10.
  • 11. kiện và quy tắc chuẩn Boyce-Codd Normal Form (BCNF): dạng chuẩn Boyce-Codd? Chuẩn hóa 3NF Quy tắc chuẩn hóa từ 2NF thành 3NF: Bước 1: Loại bỏ các thuộc tính phụ thuộc bắc cầu ra khỏi quan hệ và tách chúng thành quan hệ riêng có khóa chính là thuộc tính bắc cầu. Bước 2: Các thuộc tính còn lại lập thành một quan hệ có khóa chính là khóa ban đầu. 11
  • 12.
  • 13. hóa 3NF thành Boyce-Codd: Bước 1: Loại bỏ các thuộc tính khóa phụ thuộc hàm vào thuộc tính không khóa ra khỏi quan hệ Bước 2: Tách thuộc tính vừa loại bỏ thành một quan hệ riêng có khoá chính là thuộc tính không khóa gây ra phụ thuộc. Điều kiện: - Phải đạt chuẩn 3NF - Không có thuộc tính khóa nào phụ thuộc vào thuộc tính không khóa Chuẩn hóa Boyce-Codd 13
  • 14. chuẩn hóa - Loại bỏ dữ liệu thừa - Đảm bảo phụ thuộc dữ liệu (có nghĩa là dữ liệu được lưu trữ hợp lý). Mục đích của chuẩn hoá CSDL: - Giảm thiểu dư thừa dữ liệu - Loại bỏ các bất thường khi cập nhật CSDL Nguồn: Sách “CHIẾN LƯỢC QUẢN TRỊ DỮ LIỆU TRONG DOANH NGHIỆP” – ThS. Lê Thị Bích Hoà 14
  • 15. về Chuẩn hoá cơ sở dữ liệu Chuẩn hoá cơ sở dữ liệu là một phương pháp khoa học để phân tách (scientific method of breaking down) một bảng có cấu trúc phức tạp (complete table structures) thành những bảng có cấu trúc đơn giản (simple table structures) theo những quy định đảm bảo (certain rules) không làm mất thông tin dữ liệu. Chuẩn hoá cơ sở dữ liệu là một kỹ thuật tổ chức dữ liệu trong cơ sở dữ liệu. Chuẩn hoá là một cách tiếp cận có hệ thống của các bảng để loại bỏ sự dư thừa dữ liệu (sự lặp lại) và các đặc điểm không mong muốn như Thêm, Cập nhật và Xoá. 15
  • 16. về Chuẩn hoá cơ sở dữ liệu (tt)  Sẽ làm giảm bớt sự dư thừa và loại bỏ những sự cố mâu thuẫn về dữ liệu, tiết kiệm được không gian lưu trữ.  Đó là một quá trình gồm nhiều bước để đưa dữ liệu vào dạng bảng, loại bỏ dữ liệu trùng lặp khỏi bảng quan hệ. 16
  • 17. Khoa ThoiGian MaM H TenMH LanTh i DiemTh i DiemTB N01 Lam Vy 2 QTK D 10/01/2019 Kt01 Kinh te 1 8 9 N01 Lam Vy 2 QTK D 10/01/2019 Tcc01 Toan Cao Cap 2 7 8 N01 Lam Vy 2 QTK D 10/01/2019 Plbc01 Phap luat Dai cuong 1 9 8 Bảng chưa Chuẩn hoá: 17
  • 18. TenMH LanThi DiemThi DiemTB N01 10/01/2019 Kt01 Kinh te 1 8 9 N01 10/01/2019 Tcc01 Toan Cao Cap 2 7 8 N01 10/01/2019 Plbc01 Phap luat Dai cuong 1 9 8 Bảng đã Chuẩn hoá: MaSV TenSV Nhom Khoa ThoiGian N01 Lam Vy 2 QTKD 10/01/2019 18
  • 19. LƯỢC QUẢN TRỊ DỮ LIỆU TRONG DOANH NGHIỆP” – ThS. Lê Thị Bích Hoà và Internet 19