Dù có tương đối nhiều ý kiến trái ngược tuy nhiên chuẩn hóa DataBase là 1 bài toán quan trọng đặc biệt để sở hữu được một cơ sở dữ liệu tốt: không còn những dị thường (update anomaly, insertion anomaly, deletion anomaly), không tồn tại dư thừa tài liệu.quý khách đã xem: Normalization là gì

Bài này trình diễn mục tiêu của chuẩn chỉnh hóa, những vụ việc mà lại chuẩn hóa giải quyết và xử lý, đồng thời trình bày một trong những ví dụ chuẩn hóa cơ sở dữ liệu mang lại một trong những ứng dụng vào thực tế (Hóa giao dịch, Cơ sở thuốc, Nhân sự, …). Qua đó, fan gọi hoàn toàn có thể thâu tóm kinh nghiệm chuẩn hóa thuận tiện hơn.

Bạn đang xem: Normalization là gì

Trong đa số những ngôi trường hợp (đặc biệt là giữa những ngôi trường phù hợp CSDL bé dại, chỉ vài ba chục bảng) thì dạng chuẩn chỉnh 3NF hoặc BCNF là đạt được những hiểu biết. Các ĐK nhằm chuẩn hóa lên 4NF, 5NF, 6NF rất hiếm Khi xẩy ra. Do kia, như một giải pháp nhớ vui về qui tắc chuẩn hóa từ 1NF cho BCNF, phần nhiều bất kỳ ai khi tò mò về chuẩn hóa DataBase phần nhiều nghe biết câu thần chú sau:

The key, the whole key, and nothing but the key, so help me Codd.

Mục tiêu của chuẩn hóa

Loại quăng quật dư thừa dữ liệu

Xem bảng tài liệu về nhân công trong số dự án của một cửa hàng nhỏng sau:

Project numberProject nameEmployee numberEmployee nameRate categoryHourly rate
1023Madagasoto travel site11Vincent RadebeA$60
1023Madagasoto travel site12Pauline JamesB$50
1023Madagasoto travel site16Charles RamorazC$40
1056Online estate agency11Vincent RadebeA$60
1056Online estate agency17Monique WilliamsB$50

 

Để ý cột Project name, dữ liệu về tên project lặp lại nhiều lần. Gây dư thừa tài liệu.

Loại quăng quật update anomaly

Đây là dị thường xảy ra Khi cập nhật CSDL. Với bảng cơ sở dữ liệu này, cứ đọng mọi khi một nhân viên biến hóa liên hệ, toàn bộ các bạn dạng ghi có hệ trọng của nhân viên cấp dưới kia phải được cập nhật. Nhưng vày lí vì chưng làm sao kia, trong ngôi trường hợp này, dữ liệu về thúc đẩy không được update không thiếu, tạo ra kì cục.

Loại bỏ insertion anomaly


*

Với bảng CSDL bên trên, khi tất cả một giáo sư new về trường, chưa kịp huấn luyện và giảng dạy khóa làm sao thì báo cáo về giáo sư này không thể đưa vào CSDL được. Dị thường xuyên này được Call là insert anomaly.

Loại quăng quật deletion anomaly

 

Pmùi hương pháp chuẩn hóa

Nguyên lí cơ bản trong chuẩn hóa DataBase là triệt tiêu dư thừa dữ liệu bằng phương pháp phân chảy các tình dục nhưng lại không được làm mất đọc tin.

Xem thêm: Rack Rate Là Gì - Cấu Trúc Giá Phòng Trong Khách Sạn

Tutorial về chuẩn chỉnh hóa CSDL

Tutorial 1 - Dùng phương pháp làm cho phẳng nhằm chuẩn chỉnh hóa 1NF

Tại phía trên gồm một tutorial rất hay về chuẩn hóa CSDL với do đấy là trang công nghệ biết tin chnóng giờ đồng hồ Việt bắt buộc tutorial này cũng đang tất cả bạn dạng tiếng Việt mang lại phần đa các bạn ko ham mê giờ đồng hồ Anh. Mời chúng ta trao đổi về chuẩn hóa DataBase làm việc topic này.

Tutorial 2 - Dùng cách thức bóc tách nhóm lặp để chuẩn hóa 1NF

Yêu cầu: xây dựng CSDL quản lí lí siêu thị dung dịch nên những lên tiếng sau:

DB(Mã hóa đối kháng, Ngày phân phối, Tổng chi phí Hóa đối kháng, Mã khách hàng, Tên Khách mặt hàng, Số ĐT Khách mặt hàng, Mã Nhân viên, Số CMT của NV, Tên NV, Địa chỉ NV, Số ĐT Nhân viên (Mã dung dịch, Tên dung dịch, Công dụng, Ngày SX, Hạn SD, Số lượng, Thành tiền)).

Các dựa vào hàm:

Mã hóa solo, Mã quý khách hàng, Mã nhân viên, Mã dung dịch, khẳng định nhất 1 hóa solo, 1 quý khách, 1 NV, 1 loại thuốc.Một hóa 1-1 có thể có nhiều dung dịch tuy vậy chỉ bởi vì một người tiêu dùng với một nhân viên cấp dưới cung cấp.Số CMT của NV-> Tên NV, Địa chỉ NV.1NF - Loại vứt đội lặp và vứt bỏ các ở trong tính tính toán thù.

Cần các loại 2 thuộc tính tính tân oán sau: Tổng chi phí hóa 1-1 và thành tiền. Vì trên đây chính là tài liệu dư quá.

Hóa đơn(Mã hóa đơn, Ngày cung cấp, Mã khách hàng, Tên Khách sản phẩm, Số ĐT Khách hàng, Mã Nhân viên, Số CMT của NV, Tên NV, Địa chỉ NV, Số ĐT NV)Hóa solo - Thuốc(Mã hóa đơn, Mã thuốc, Tên thuốc, Công dụng, Ngày SX, Hạn SD, Số lượng)2NF - Loại vứt các dựa vào hàm không trọn vẹn vào khóa chính

Xét quan hệ giới tính Hóa solo - Thuốc : Tên dung dịch, Công dụng, Ngày SX, Hạn SD chỉ phụ thuộc vào vào Mã thuốc nhưng ko nhờ vào vào toàn khóa yêu cầu quan hệ tình dục này được tách bóc làm cho 2 tình dục sau:

Hóa đơn - Thuốc(Mã hóa đơn, Mã thuốc, Số lượng)Thuốc(Mã thuốc, Tên thuốc, Công dụng, Ngày SX, Hạn SD)

Như vậy, làm việc dạng 2NF ta bao gồm 3 quan hệ:

Hóa đơn(Mã hóa đơn, Ngày cung cấp, Mã quý khách hàng, Tên Khách hàng, Số ĐT Khách sản phẩm, Mã Nhân viên, Số CMT của NV, Tên NV, Địa chỉ NV, Số ĐT NV)Hóa 1-1 - Thuốc(Mã hóa 1-1, Mã thuốc, Số lượng)Thuốc(Mã thuốc, Tên thuốc, Công dụng, Ngày SX, Hạn SD)3NF - Loại quăng quật các dựa vào hàm bắc cầu vào khóa chính

Tại tình dục Hóa đơn, ta thấy Tên Khách sản phẩm, Số ĐT Khách sản phẩm chỉ nhờ vào Mã khách hàng. Số CMT của NV, Tên NV, Địa chỉ NV chỉ phụ thuộc mã nhân viên. Do đó bóc tách quan hệ giới tính này thành 3 dục tình sau:

Hóa đơn(Mã hóa đơn, Ngày bán, Mã quý khách hàng, Mã Nhân viên)Khách hàng(Mã khách hàng hàng, Tên Khách mặt hàng, Số ĐT Khách hàng)Nhân viên(Mã Nhân viên, Số CMT của NV, Tên NV, Địa chỉ NV, Số ĐT NV)

vì thế, làm việc 3NF, bọn họ tất cả 5 quan hệ sau:

Hóa đơn(Mã hóa đơn, Ngày cung cấp, Mã người tiêu dùng, Mã Nhân viên)Khách hàng(Mã khách hàng, Tên Khách mặt hàng, Số ĐT Khách hàng)Nhân viên(Mã Nhân viên, Số CMT của NV, Tên NV, Địa chỉ NV, Số ĐT NV)Hóa đối kháng - Thuốc(Mã hóa đối kháng, Mã thuốc, Số lượng)Thuốc(Mã thuốc, Tên thuốc, Công dụng, Ngày SX, Hạn SD)BCNF - Các nằm trong tính quyết định bắt buộc là khóa

Tại quan hệ giới tính Nhân viên, ta thấy Số CMT của NV-> Tên NV, Địa chỉ NV nhưng lại Số CMT của Nhân viên không ra quyết định Số ĐT NV (Nhân viên hoàn toàn có thể có khá nhiều số ĐT như số cầm tay, số bên, số phòng ban, …). Vậy nên, bởi Số CMT của NV là 1 trong những ở trong tính đưa ra quyết định (determinant) nhưng chưa hẳn khóa buộc phải tình dục Nhân viên không đạt BCNF, rất cần được bóc tách thành 2 quan hệ tình dục nhỏng sau:

Điện thoại - Nhân viên(Mã Nhân viên, Số CMT của NV, Số ĐT NV)Nhân viên(Số CMT của NV, Tên NV, Địa chỉ NV)

Vậy, cơ sở dữ liệu của bọn họ ngơi nghỉ BCNF có 6 quan hệ sau:

Hóa đơn(Mã hóa đơn, Ngày cung cấp, Mã quý khách hàng, Mã Nhân viên)Khách hàng(Mã khách hàng, Tên Khách hàng, Số ĐT Khách hàng)Điện thoại - Nhân viên(Mã Nhân viên, Số CMT của NV, Số ĐT NV)Nhân viên(Số CMT của NV, Tên NV, Địa chỉ NV)Hóa 1-1 - Thuốc(Mã hóa solo, Mã thuốc, Số lượng)Thuốc(Mã thuốc, Tên dung dịch, Công dụng, Ngày SX, Hạn SD)

Tutorial 3 - Chuẩn hóa về BCNF

Ở đây tất cả giáo trình CSDL (Bằng Tiếng Anh)đề cập về chuẩn chỉnh hóa rất dễ hiểu. Trình bày khá sâu về anomaly, các dạng chuẩn chỉnh giải quyết anomaly ra làm sao.

Nói phổ biến thì chuẩn hóa DataBase là bài toán cần phải biết trong lúc học tập , Vì không tính thực tiễn nếu mà đã có được chuẩn chỉnh càng tốt thì DataBase càng bị dư quá - Tùy theo mục đích thực hiện mà lại chuẩn hóa tuyệt ko )

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *