Chuyển tới nội dung
Read this post in: de_DEen_USes_ESfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW
Home » Data Modeling / Database » Xây dựng một cửa hàng sách trực tuyến: Mô hình hóa dữ liệu với ERD và DBML

Xây dựng một cửa hàng sách trực tuyến: Mô hình hóa dữ liệu với ERD và DBML

Mô hình hóa dữ liệu là quá trình tạo ra một biểu diễn trực quan về dữ liệu và các mối quan hệ của chúng trong cơ sở dữ liệu. Một trong những công cụ thường được sử dụng nhất để mô hình hóa dữ liệu là sơ đồ quan hệ thực thể (ERD), sử dụng các ký hiệu đồ họa để biểu diễn các thực thể, thuộc tính và mối quan hệ. Trong bài viết này, chúng ta sẽ khám phá quy trình mô hình hóa dữ liệu bằng ERD và cung cấp các ví dụ về cách nó có thể được sử dụng trong các tình huống thực tế.

Sơ đồ quan hệ thực thể (ERD) là gì?

ERD là một biểu diễn đồ họa về các thực thể, thuộc tính của chúng và mối quan hệ giữa chúng. Các thực thể là các đối tượng hoặc khái niệm được biểu diễn trong cơ sở dữ liệu, chẳng hạn như khách hàng, đơn hàng hoặc sản phẩm. Các thuộc tính là đặc điểm hoặc thuộc tính của các thực thể, chẳng hạn như tên, địa chỉ hoặc giá. Các mối quan hệ là các liên kết giữa các thực thể, chẳng hạn như một khách hàng đặt một đơn hàng.

ERD thường bao gồm các thành phần sau:

  1. Thực thể: được biểu diễn bằng hình chữ nhật với tên thực thể được viết bên trong.
  2. Thuộc tính: được biểu diễn bằng hình elip kết nối với thực thể mà nó thuộc về bằng một đường thẳng.
  3. Mối quan hệ: được biểu diễn bằng hình thoi kết nối các thực thể.

Ba loại mối quan hệ có thể tồn tại giữa các thực thể là:

  1. Một-đối-một (1:1): nơi một thể hiện của một thực thể được liên kết với một thể hiện của thực thể khác.
  2. Một-đối-nhiều (1:N): nơi một thể hiện của một thực thể được liên kết với nhiều thể hiện của thực thể khác.
  3. Nhiều-đối-nhiều (N:M): nơi nhiều thể hiện của một thực thể được liên kết với nhiều thể hiện của thực thể khác.

Ví dụ về mô hình hóa dữ liệu sử dụng ERD

Hãy cùng xem xét một ví dụ về một cửa hàng sách trực tuyến bán sách cho khách hàng. Cửa hàng sách có nhiều thể loại sách và một lượng lớn khách hàng có thể đặt đơn hàng. Để mô hình hóa hệ thống này bằng ERD, chúng ta có thể bắt đầu bằng việc xác định các thực thể, thuộc tính và mối quan hệ liên quan.

Các thực thể:

  1. Sách: Biểu diễn một cuốn sách trong cửa hàng sách. Chứa các thuộc tính như tiêu đề, tác giả, ISBN và giá.
  2. Thể loại: Biểu diễn một thể loại hoặc thể loại sách trong cửa hàng sách. Chứa các thuộc tính như tên và mô tả.
  3. Khách hàng: Biểu diễn một khách hàng đã đăng ký tại cửa hàng sách. Chứa các thuộc tính như tên, địa chỉ và email.
  4. Đơn hàng: Biểu diễn một đơn hàng do khách hàng đặt. Chứa các thuộc tính như ngày đặt hàng và tổng giá. Cũng có tham chiếu khóa ngoại đến thực thể Khách hàng, cho biết khách hàng nào đã đặt đơn hàng.
  5. Sách_Thể loại: Biểu diễn mối quan hệ nhiều-đối-nhiều giữa sách và thể loại. Chứa các tham chiếu khóa ngoại đến cả thực thể Sách và Thể loại.
  6. Đơn_hàng_Sách: Biểu diễn mối quan hệ nhiều-đối-nhiều giữa đơn hàng và sách. Chứa các tham chiếu khóa ngoại đến cả thực thể Đơn_hàng và Sách.

Các mối quan hệ:

  • Một cuốn sách có thể thuộc về nhiều thể loại (Nhiều-đối-nhiều).
  • Một thể loại có thể có nhiều sách (Một-đối-nhiều).
  • Một khách hàng có thể đặt nhiều đơn hàng (Một-đối-nhiều).
  • Một đơn hàng có thể chứa nhiều sách (Nhiều-đối-nhiều).

Với các thực thể, thuộc tính và mối quan hệ này trong tâm trí, chúng ta có thể tạo một ERD cho hệ thống cửa hàng sách trực tuyến. ERD sẽ trông giống như sau:

ERD for bookstore

Trong sơ đồ ERD này, chúng ta có thể thấy rằng thực thể Sách có mối quan hệ nhiều-đối-nhiều với thực thể Thể loại, điều đó có nghĩa là một cuốn sách có thể thuộc về nhiều thể loại, và một thể loại có thể có nhiều sách. Thực thể Khách hàng có mối quan hệ một-đối-nhiều với thực thể Đơn_hàng, điều đó có nghĩa là một khách hàng có thể đặt nhiều đơn hàng, nhưng mỗi đơn hàng chỉ thuộc về một khách hàng. Cuối cùng, thực thể Đơn_hàng có mối quan hệ nhiều-đối-nhiều với thực thể Sách, điều đó có nghĩa là một đơn hàng có thể chứa nhiều sách, và một cuốn sách có thể xuất hiện trong nhiều đơn hàng.

Tạo mã SQL lược đồ cơ sở dữ liệu với Visual Paradigm

Bảng sách {
id int [khóa chính, tăng dần]
title varchar
author varchar
isbn varchar
price float
}

Bảng category {
id int [khóa chính, tăng dần]
name varchar
description varchar
}

Bảng customer {
id int [khóa chính, tăng dần]
name varchar
address varchar
email varchar
}

Bảng order {
id int [khóa chính, tăng dần]
order_date datetime
total_price float
customer_id int [tham chiếu: > customer.id]
}

Bảng book_category {
book_id int [tham chiếu: > book.id]
category_id int [tham chiếu: > category.id]
}

Bảng order_book {
order_id int [tham chiếu: > order.id]
book_id int [tham chiếu: > book.id]
}

Kết luận

Mô hình hóa dữ liệu bằng sơ đồ ERD là một quá trình quan trọng giúp chúng ta hình dung và hiểu rõ mối quan hệ giữa các thực thể trong cơ sở dữ liệu. Bằng cách xác định các thực thể, thuộc tính và mối quan hệ, chúng ta có thể tạo ra một sơ đồ ERD thể hiện dữ liệu và cấu trúc của nó một cách rõ ràng và súc tích. Điều này giúp chúng ta thiết kế và duy trì các cơ sở dữ liệu hiệu quả và hiệu suất cao, đáp ứng được nhu cầu của tổ chức.

Để lại một bình luận