Thuộc Tính Trong Mô Hình ER: Phân Loại, Ví Dụ & Cách Biểu Diễn

Mỗi thực thể đều sở hữu những thuộc tính riêng. Thuộc tính (attribute) là một đặc điểm của kiểu thực thể mà chúng ta cần lưu tâm trong phạm vi dự án. Bài viết này sẽ đi sâu vào các loại thuộc tính khác nhau và cách chúng được biểu diễn trong sơ đồ ER (Entity-Relationship).

Thuộc Tính Đơn và Thuộc Tính Phức Hợp

Thuộc tính đơn (simple attribute) là thuộc tính không thể chia nhỏ thành các thành phần nhỏ hơn. Nó là một đơn vị dữ liệu không thể phân tách.

Thuộc tính phức hợp (composite attribute) là thuộc tính có thể phân tách thành các thành phần nhỏ hơn, có ý nghĩa hơn.

Ví dụ minh họa:

  • Số điện thoại: Đây là một thuộc tính đơn. Chúng ta không thể phân tách một số điện thoại thành các phần nhỏ hơn có ý nghĩa trong ngữ cảnh thông thường.
  • Địa chỉ: Đây là một thuộc tính phức hợp. Chúng ta có thể chia địa chỉ thành các thành phần như: số nhà, đường phố, phường/xã, quận/huyện, tỉnh/thành phố để dễ dàng quản lý và tìm kiếm.

Thuộc Tính Đơn Trị và Thuộc Tính Đa Trị

Thuộc tính đơn trị (single-valued attribute) là thuộc tính mà mỗi thể hiện của thực thể chỉ có một giá trị duy nhất.

Thuộc tính đa trị (multivalued attribute) là thuộc tính mà mỗi thể hiện của thực thể có thể có nhiều giá trị.

Ví dụ thực tế:

  • Ngày sinh: Đây là một thuộc tính đơn trị của thực thể SINH VIÊN. Mỗi sinh viên chỉ có một ngày sinh duy nhất.
  • Sở thích: Đây là một thuộc tính đa trị của thực thể SINH VIÊN. Một sinh viên có thể có nhiều sở thích khác nhau, ví dụ: đọc sách, chơi thể thao, nghe nhạc.

Thuộc Tính Dẫn Xuất

Thuộc tính dẫn xuất (derived attribute) là thuộc tính có giá trị có thể được tính toán hoặc suy ra từ các thuộc tính khác liên quan. Nó không cần phải được lưu trữ trực tiếp trong cơ sở dữ liệu.

Ví dụ điển hình:

Trong một hệ thống quản lý sinh viên, chúng ta quan tâm đến tuổi của sinh viên. Thay vì lưu trữ trực tiếp tuổi, chúng ta có thể lưu trữ ngày sinh và tính toán tuổi dựa trên ngày sinh hiện tại. Như vậy, “Tuổi” là một thuộc tính dẫn xuất.

Thuộc Tính Xác Định (Khóa)

Thuộc tính xác định (identifier attribute), hay còn gọi là khóa (key), là một thuộc tính hoặc một tập hợp các thuộc tính mà thông qua đó, chúng ta có thể xác định duy nhất mỗi thể hiện của một thực thể.

Ví dụ:

Đối với thực thể XE MÁY, các thuộc tính như nhãn hiệu, loại xe, năm sản xuất, màu sơn… có thể trùng lặp giữa các xe. Tuy nhiên, số khung và số máy là duy nhất cho mỗi chiếc xe. Vì vậy, “Số khung” và “Số máy” có thể được sử dụng làm thuộc tính xác định để phân biệt các xe máy. Thông thường, người ta chọn một thuộc tính làm khóa chính.

Biểu Diễn Thuộc Tính Trong Sơ Đồ ER

Trong sơ đồ ER, mỗi thuộc tính được biểu diễn bằng hình elip (ellipse) và được nối với thực thể hoặc mối quan hệ mà nó thuộc về bằng một đường thẳng.

  • Thuộc tính dẫn xuất: Sử dụng hình elip với đường nét đứt.
  • Thuộc tính đa trị: Sử dụng hình elip với hai đường viền.
  • Thuộc tính xác định: Tên thuộc tính được gạch chân.

Ví dụ:

Xét sơ đồ ER mô tả các thuộc tính của thực thể GIẢNG VIÊN:

  • Mã nhân viên: Là thuộc tính xác định (khóa chính), giúp phân biệt các giảng viên.
  • Số năm công tác: Là thuộc tính dẫn xuất, suy ra từ ngày vào làm.
  • Kỹ năng: Là thuộc tính đa trị, một giảng viên có thể có nhiều kỹ năng.

Hiểu rõ các loại thuộc tính và cách biểu diễn chúng trong sơ đồ ER là rất quan trọng trong quá trình thiết kế cơ sở dữ liệu, giúp chúng ta xây dựng một mô hình dữ liệu chính xác và hiệu quả.