Normalization Là Gì

Dù có nhiều ý kiến trái ngược nhưng lại chuẩn chỉnh hóa cơ sở dữ liệu là một trong những bài toán quan trọng đặc biệt để có được một CSDL tốt: không hề các khác lại (update anomaly, insertion anomaly, deletion anomaly), không có dư vượt dữ liệu.Quý Khách vẫn xem: Normalization là gì

Bài này trình diễn phương châm của chuẩn chỉnh hóa, các sự việc nhưng mà chuẩn chỉnh hóa giải quyết, đồng thời trình diễn một số trong những ví dụ chuẩn chỉnh hóa DataBase đến một số ứng dụng trong thực tiễn (Hóa đơn hàng, Thương hiệu thuốc, Nhân sự, …). Qua đó, người gọi hoàn toàn có thể nắm bắt kinh nghiệm chuẩn hóa dễ dãi hơn.

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

Trong phần lớn các ngôi trường đúng theo (đặc biệt là giữa những ngôi trường thích hợp CSDL nhỏ tuổi, chỉ vài ba chục bảng) thì dạng chuẩn 3NF hoặc BCNF là đạt được đề xuất. Các ĐK nhằm chuẩn hóa lên 4NF, 5NF, 6NF rất ít khi xảy ra. Do kia, nhỏng một giải pháp ghi nhớ vui về qui tắc chuẩn chỉnh hóa từ bỏ 1NF mang lại BCNF, phần lớn bất cứ ai khi tò mò về chuẩn hóa CSDL phần đa biết đến 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 vứt dư thừa dữ liệu

Xem bảng dữ liệu về nhân lực trong các dự án của một cửa hàng như sau:

Project numberProject nameEmployee numberEmployee nameRate categoryHourly rate
1023Madagasoto travel site11Vincent RadebeA$60
1023Madagascar 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 tái diễn những lần. Gây dư thừa dữ liệu.

Loại vứt update anomaly

Đây là kì cục xẩy ra Lúc update cơ sở dữ liệu. Với bảng DataBase này, cứ mỗi khi một nhân viên chuyển đổi liên tưởng, toàn bộ các phiên bản ghi tất cả xúc tiến của nhân viên cấp dưới đó bắt buộc được update. Nhưng do lí do như thế nào đó, trong trường hợp này, tài liệu về liên quan ko được update đầy đủ, tạo ra kì cục.

Loại bỏ insertion anomaly


*

Với bảng DataBase bên trên, Lúc gồm một giáo sư bắt đầu về trường, chưa kịp huấn luyện khóa như thế nào thì đọc tin về giáo sư này sẽ không thể gửi vào cơ sở dữ liệu được. Dị thường này được call là insert anomaly.

Loại vứt deletion anomaly

 

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

Ngulặng lí cơ bạn dạng trong chuẩn chỉnh hóa cơ sở dữ liệu là triệt tiêu dư quá dữ liệu bằng phương pháp phân tung các tình dục mà lại không được thiết kế mất thông tin.

Xem thêm: Lol Nghĩa Của Từ Lol Là Gì ? Tại Sao Gọi Là Lol Lol Nghĩa Là Gì

Tutorial về chuẩn hóa CSDL

Tutorial 1 - Dùng phương thức làm phẳng nhằm chuẩn hóa 1NF

Tại trên đây bao gồm một tutorial rất hay về chuẩn chỉnh hóa CSDL cùng vì đấy là trang technology báo cáo chnóng giờ đồng hồ Việt nên tutorial này cũng sẽ bao gồm phiên bản giờ đồng hồ Việt mang đến số đông chúng ta ko yêu thích giờ Anh. Mời các bạn luận bàn về chuẩn hóa DataBase sinh sống topic này.

Tutorial 2 - Dùng phương thức bóc tách đội 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 phải các ban bố sau:

DB(Mã hóa đối kháng, Ngày phân phối, Tổng chi phí Hóa solo, Mã quý 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 Nhân viên (Mã thuốc, Tên dung dịch, Công dụng, Ngày SX, Hạn SD, Số lượng, Thành tiền)).

Các phụ thuộc vào hàm:

Mã hóa 1-1, Mã người tiêu dùng, Mã nhân viên, Mã dung dịch, xác minh nhất 1 hóa đối kháng, 1 người sử dụng, 1 NV, 1 bài thuốc.Một hóa đối chọi hoàn toàn có thể có không ít dung dịch tuy vậy chỉ vày một người tiêu dùng với một nhân viên cấp dưới phân phối.Số CMT của NV-> Tên NV, Địa chỉ NV.1NF - Loại bỏ nhóm lặp với đào thải các nằm trong tính tính tân oán.

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

Hóa đơn(Mã hóa đơn, Ngày chào bán, Mã quý khách, 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 1-1 - Thuốc(Mã hóa đối chọi, Mã thuốc, Tên dung dịch, Công dụng, Ngày SX, Hạn SD, Số lượng)2NF - Loại vứt những phụ thuộc vào hàm ko hoàn toàn vào khóa chính

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

Hóa 1-1 - 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)

bởi thế, sinh hoạt dạng 2NF ta có 3 quan lại hệ:

Hóa đơn(Mã hóa đơn, Ngày phân phối, Mã quý khách, Tên Khách sản phẩm, 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 solo - 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 vứt các phụ thuộc hàm bắc cầu vào khóa chính

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

Hóa đơn(Mã hóa đơn, Ngày phân phối, Mã quý khách, Mã Nhân viên)Khách hàng(Mã khách hàng hàng, Tên Khách sản phẩm, 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)

Như vậy, ngơi nghỉ 3NF, họ gồm 5 dục tình sau:

Hóa đơn(Mã hóa đơn, Ngày phân phối, Mã 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)Hóa 1-1 - Thuốc(Mã hóa đối chọi, 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)BCNF - Các trực thuộc tính quyết định đề nghị là khóa

Tại tình dục 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 ko ra quyết định Số ĐT NV (Nhân viên có thể có khá nhiều số ĐT nhỏng số di động cầm tay, số đơn vị, số cơ sở, …). bởi vậy, vì Số CMT của NV là một nằm trong tính quyết định (determinant) nhưng không phải khóa đề xuất quan hệ tình dục Nhân viên không đạt BCNF, rất cần phải tách thành 2 quan hệ tình dục như 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, DataBase của họ nghỉ ngơi BCNF bao gồm 6 dục tình sau:

Hóa đơn(Mã hóa đơn, Ngày chào bán, Mã 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 solo - 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)

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

Tại đây gồm giáo trình cơ sở dữ liệu (Bằng Tiếng Anh)nhắc về chuẩn hóa rất dễ hình dung. Trình bày tương đối sâu về anomaly, các dạng chuẩn xử lý anomaly ra làm sao.

Nói chung thì chuẩn hóa CSDL là vấn đề nên biết trong khi học , Vì kế bên thực tiễn nếu như đạt được chuẩn càng tốt thì cơ sở dữ liệu càng bị dư quá - Tùy theo mục đích áp dụng mà chuẩn chỉnh hóa xuất xắc ko )