제이의 블로그

Mô hình hóa dữ liệu logic

  • Ngôn ngữ viết: Tiếng Hàn Quốc
  • Quốc gia: Tất cả các quốc giacountry-flag
  • CNTT

Đã viết: 2024-04-09

Đã viết: 2024-04-09 12:21

So với phân tích yêu cầu và mô hình hóa dữ liệu khái niệm, mô hình hóa dữ liệu logic là một quy trình cơ học hơn.

Quá trình này chủ yếu tập trung vào việc chuyển đổi ERD (sản phẩm đầu ra của mô hình hóa dữ liệu khái niệm) thành mô hình phù hợp với mô hình cơ sở dữ liệu quan hệ dựa trên Quy tắc ánh xạ (Mapping Rule).

Quy tắc ánh xạ

  • Thực thể hình chữ nhật được chuyển đổi thành bảng.
  • Thuộc tính hình tròn được chuyển đổi thành cột.
  • Quan hệ được chuyển đổi thành khóa chính (PK) hoặc khóa ngoại (FK).

Trước hết, các bảng không có FK nên được thể hiện ưu tiên.

Quan hệ

  • Biểu diễn mối quan hệ giữa các bảng bằng cách xem xét số lượng (Cardinality) và tính tùy chọn (Optionality).
  • Biểu diễn theo thứ tự từ mối quan hệ đơn giản nhất là 1:1, sau đó là 1:N và cuối cùng là N:M.

Xử lý quan hệ 1:1

Trong quan hệ 1:1, hãy xem xét mối quan hệ phụ thuộc giữa hai bảng và thiết lập FK.

Có thể xem chúng là bảng cha và bảng con.

Xử lý quan hệ 1:N

Trong quan hệ 1:N, vì 1 được N tham chiếu nên FK được thiết lập cho N.

Xử lý quan hệ N:M

Để xử lý quan hệ N:M trong cơ sở dữ liệu quan hệ, cần tạo ra một bảng trung gian (còn được gọi là bảng ánh xạ hoặc bảng liên kết) để thể hiện.

Điều quan trọng ở đây là phải thể hiện số lượng và tính tùy chọn của cả hai bảng được tham chiếu dựa trên bảng ánh xạ.

Chuẩn hóa (Normalization)

Mô hình hóa dữ liệu logic

Wikipedia - Chuẩn hóa cơ sở dữ liệu

Đây là quá trình biến đổi các bảng chưa được tinh chỉnh thành các bảng phù hợp với cơ sở dữ liệu quan hệ.

Trong công nghiệp, quá trình chuẩn hóa được áp dụng đến dạng chuẩn hóa thứ 3, các dạng chuẩn hóa sau đó chủ yếu được sử dụng trong học thuật.

Chuẩn hóa phải được thực hiện tuần tự từng bước một.

Dạng chuẩn hóa thứ nhất (1st Normal Form, 1NF)

  • Các cột thuộc về bảng phải chỉ chứa các giá trị nguyên tử (Atomic).

Khi xem xét nguyên tắc cơ bản của dạng chuẩn hóa thứ nhất, có thể khó hiểu, nhưng đơn giản là mỗi cột chỉ nên chứa một giá trị duy nhất.

Nếu một cột chứa nhiều giá trị, nghĩa là không phải là nguyên tử, thì sẽ khó thực hiện nối bằng câu lệnh SQL và có thể gây ra nhiều vấn đề khác.

Dạng chuẩn hóa thứ hai (2nd Normal Form, 2NF)

  • Phải đáp ứng dạng chuẩn hóa thứ nhất.
  • Phải loại bỏ sự phụ thuộc một phần.

Nếu có các giá trị trùng lặp trong các hàng của bảng, hãy tìm cột mà hàng đó phụ thuộc vào và tách chúng ra.

Dạng chuẩn hóa thứ ba (3rd Normal Form, 3NF)

  • Phải đáp ứng dạng chuẩn hóa thứ nhất.
  • Phải đáp ứng dạng chuẩn hóa thứ hai.
  • Phải loại bỏ sự phụ thuộc chuyển tiếp.

Thuật ngữ "sự phụ thuộc chuyển tiếp" rất khó hiểu. Theo hiểu biết của tôi, nếu trong một bảng cụ thể có một hoặc nhiều giá trị ngầm định ám chỉ đến định danh của bảng khác (ngoài khóa ngoại), thì đó có vẻ là sự phụ thuộc chuyển tiếp.

Bình luận0

[Phi chuyên ngành, trở thành Developer] 14. Tóm tắt những câu hỏi kỹ thuật thường gặp trong phỏng vấn tuyển dụng Developer mớiBài viết này tóm tắt những câu hỏi kỹ thuật thường gặp trong phỏng vấn tuyển dụng Developer mới (vùng nhớ, cấu trúc dữ liệu, cơ sở dữ liệu, v.v.). Hy vọng bài viết sẽ giúp ích cho quá trình chuẩn bị phỏng vấn của bạn.
투잡뛰는 개발 노동자
투잡뛰는 개발 노동자
투잡뛰는 개발 노동자
투잡뛰는 개발 노동자

April 3, 2024