Mô hình dữ liệu quan hệ trong hệ quản trị cơ sở dữ liệu: Concepts & Ví dụ

⚡ Tóm tắt thông minh

Mô hình quan hệ biểu diễn cơ sở dữ liệu như một tập hợp các quan hệ, trong đó mỗi quan hệ là một bảng gồm các hàng và cột. Nó định nghĩa các khái niệm cốt lõi, các ràng buộc toàn vẹn và các thao tác cập nhật giúp dữ liệu quan hệ nhất quán và dễ truy vấn.

  • 🗃️ Ý tưởng cốt lõi: Dữ liệu được lưu trữ dưới dạng các quan hệ, và mỗi hàng là một bộ dữ liệu mô tả một thực thể hoặc mối quan hệ trong thế giới thực.
  • 🏷️ Điều khoản quan trọng: Thuộc tính, bộ dữ liệu, bậc, số lượng phần tử, miền giá trị và khóa quan hệ cùng nhau mô tả cấu trúc của một bảng.
  • 🛡️ Ba ràng buộc: Các ràng buộc về miền, khóa và tính toàn vẹn tham chiếu đảm bảo mọi mối quan hệ đều hợp lệ.
  • 🔑 Bảng liên kết khóa: Khóa chính xác định duy nhất một hàng, còn khóa ngoại tham chiếu đến một khóa trong bảng khác.
  • 🔄 Bốn Operaý kiến: Các thao tác chèn, cập nhật, xóa và chọn đều được thực hiện trên các mối quan hệ mà không vi phạm các ràng buộc đã định nghĩa.
  • Quy tắc thiết kế: Một giá trị mỗi ô, tên cột duy nhất, không có hàng trùng lặp và các giá trị được lấy từ cùng một miền.
  • 📈 Tại sao nó chiến thắng: Tính đơn giản, tính độc lập về cấu trúc, ngôn ngữ truy vấn cấp cao và tính độc lập về dữ liệu.

Mô hình dữ liệu quan hệ trong DBMS

Mô hình quan hệ là gì?

Mô hình quan hệ (RM) đại diện cho cơ sở dữ liệu như một tập hợp các quan hệ. Một mối quan hệ không là gì ngoài một bảng giá trị. Mỗi hàng trong bảng biểu thị một tập hợp các giá trị dữ liệu có liên quan. Những hàng này trong bảng biểu thị một thực thể hoặc mối quan hệ trong thế giới thực.

Tên bảng và tên cột giúp diễn giải ý nghĩa của các giá trị trong mỗi hàng. Dữ liệu được biểu diễn dưới dạng một tập hợp các quan hệ. Trong mô hình quan hệ, dữ liệu được lưu trữ dưới dạng bảng. Tuy nhiên, việc lưu trữ vật lý của dữ liệu không phụ thuộc vào cách dữ liệu được tổ chức logic.

Mô hình này được EF Codd đề xuất vào năm 1970 và vẫn là nền tảng của hầu hết các cơ sở dữ liệu chính thống được sử dụng hiện nay. Một số hệ quản trị cơ sở dữ liệu quan hệ phổ biến bao gồm:

  • Máy chủ động DB2 và Informix – IBM
  • Oracle và RDB – Oracle
  • Máy chủ SQL và quyền truy cập – Microsoft

Mô hình quan hệ Concepts trong DBMS

  1. Thuộc tính: Mỗi cột trong một bảng. Thuộc tính là các đặc tính xác định mối quan hệ, ví dụ: Student_Rollno, NAME, v.v.
  2. Những cái bàn: Trong mô hình quan hệ, các quan hệ được lưu trữ dưới dạng bảng. Bảng được lưu trữ cùng với các thực thể của nó. Một bảng có hai thuộc tính: hàng và cột. Hàng đại diện cho các bản ghi và cột đại diện cho các thuộc tính.
  3. Bộ dữ liệu: Nó chỉ là một hàng duy nhất trong bảng, chứa một bản ghi duy nhất.
  4. Lược đồ quan hệ: Lược đồ quan hệ biểu thị tên của mối quan hệ cùng với các thuộc tính của nó.
  5. Bằng cấp: Tổng số thuộc tính trong một quan hệ được gọi là bậc của quan hệ đó.
  6. Hồng y: Tổng số hàng có trong bảng.
  7. Cột: Cột đại diện cho tập hợp các giá trị cho một thuộc tính cụ thể.
  8. Ví dụ về mối quan hệ: Một thể hiện quan hệ là một tập hợp hữu hạn các bộ dữ liệu trong hệ quản trị cơ sở dữ liệu quan hệ (RDBMS). Các thể hiện quan hệ không bao giờ có các bộ dữ liệu trùng lặp.
  9. Khóa quan hệ: Mỗi hàng có một, hai hoặc nhiều thuộc tính, được gọi là khóa quan hệ.
  10. Miền thuộc tính: Mỗi thuộc tính đều có một giá trị và phạm vi được xác định trước, được gọi là miền thuộc tính.

Các khái niệm về mô hình quan hệ được minh họa trên một bảng.

Khi đã nắm vững vốn từ vựng, vấn đề tiếp theo cần quan tâm là...ping Dữ liệu trong các mối quan hệ đó phải hợp lệ, đó là nhiệm vụ của các ràng buộc toàn vẹn.

Quan hệ Integrity Những ràng buộc

Các ràng buộc toàn vẹn quan hệ trong hệ quản trị cơ sở dữ liệu (DBMS) đề cập đến các điều kiện phải có để một quan hệ được coi là hợp lệ. Các ràng buộc quan hệ này được suy ra từ các quy tắc trong thế giới thu nhỏ mà cơ sở dữ liệu đại diện.

Có nhiều loại ràng buộc toàn vẹn. Các ràng buộc trong hệ quản trị cơ sở dữ liệu quan hệ chủ yếu được chia thành ba loại chính:

  1. Ràng buộc tên miền
  2. Những hạn chế chính
  3. tài liệu tham khảo Integrity Những ràng buộc

Ràng buộc tên miền

Các ràng buộc về miền có thể bị vi phạm nếu giá trị thuộc tính không xuất hiện trong miền tương ứng hoặc nếu nó không có kiểu dữ liệu phù hợp.

Các ràng buộc miền quy định rằng trong mỗi bộ dữ liệu, giá trị của mỗi thuộc tính phải là nguyên tử và được lấy từ miền chính xác. Miền được chỉ định dưới dạng các kiểu dữ liệu, bao gồm các kiểu chuẩn như số nguyên, số thực, ký tự, Boolean và chuỗi có độ dài thay đổi.

Ví dụ:

CREATE DOMAIN CustomerName
CHECK (value NOT NULL)

Ví dụ được hiển thị minh họa việc tạo ràng buộc miền sao cho CustomerName không được phép là NULL.

Những hạn chế chính

Một thuộc tính có thể xác định duy nhất một bộ trong một quan hệ được gọi là khóa của bảng. Giá trị của thuộc tính cho các bộ khác nhau trong quan hệ phải là duy nhất.

Ví dụ:

Trong bảng đã cho, CustomerID là thuộc tính khóa của bảng Customer. Thông thường, mỗi khách hàng chỉ có một khóa duy nhất; CustomerID = 1 chỉ dành cho CustomerName.GoogleHướng dẫn này sẽ trình bày đầy đủ chi tiết về các loại chìa khóa khác nhau. Khóa DBMS.

ID khách hàng Tên khách hàng Trạng thái
1 Google hoạt động
2 Amazon hoạt động
3 Apple Không hoạt động

tài liệu tham khảo Integrity Những ràng buộc

Các ràng buộc toàn vẹn tham chiếu trong hệ quản trị cơ sở dữ liệu (DBMS) dựa trên khái niệm khóa ngoại. Khóa ngoại là một thuộc tính quan trọng của một quan hệ cần được tham chiếu trong các quan hệ khác. Ràng buộc toàn vẹn tham chiếu xảy ra khi một quan hệ tham chiếu đến một thuộc tính khóa của một quan hệ khác hoặc cùng một quan hệ. Phần tử khóa đó phải tồn tại trong bảng được tham chiếu.

Ví dụ:

Tính toàn vẹn tham chiếu giữa Khách hàng và Billmối quan hệ

Trong ví dụ trên, chúng ta có hai mối quan hệ, Khách hàng và Billing.

Tuple cho CustomerID = 1 được tham chiếu hai lần trong mối quan hệ. Billing. Vậy nên chúng ta biết CustomerName “Google"Có tổng số tiền thanh toán là 300 đô la."

Operacác quan hệ trong Mô hình Quan hệ

Có bốn thao tác cập nhật cơ bản được thực hiện trên mô hình cơ sở dữ liệu quan hệ: chèn, cập nhật, xóa và chọn.

  • Lệnh INSERT được sử dụng để chèn dữ liệu vào bảng.
  • Xóa được sử dụng để xóa các bộ dữ liệu khỏi bảng.
  • Sửa đổi cho phép bạn thay đổi giá trị của một số thuộc tính trong bộ dữ liệu hiện có.
  • Chọn cho phép bạn chọn một phạm vi dữ liệu cụ thể.

Bất cứ khi nào một trong những thao tác này được áp dụng, các ràng buộc toàn vẹn được chỉ định trên lược đồ cơ sở dữ liệu quan hệ không được phép bị vi phạm.

Chèn Operasản xuất

Thao tác chèn cung cấp các giá trị thuộc tính cho một bộ dữ liệu mới cần được chèn vào một bảng.

Thao tác chèn thêm một bộ dữ liệu mới vào một quan hệ.

Cập nhật Operasản xuất

Như bạn có thể thấy trong bảng quan hệ bên dưới, CustomerName 'Apple' được cập nhật từ Inactive sang Active.

Thao tác cập nhật thay đổi giá trị trạng thái trong một bộ dữ liệu.

Xóa bỏ Operasản xuất

Để chỉ định việc xóa, một điều kiện trên các thuộc tính của mối quan hệ sẽ chọn bộ cần xóa.

Thao tác xóa, loại bỏ một bộ dữ liệu khỏi một quan hệ.

Trong ví dụ trên, CustomerName “Apple” bị xóa khỏi bảng.

Thao tác xóa có thể vi phạm tính toàn vẹn tham chiếu nếu bản ghi bị xóa được tham chiếu bởi các khóa ngoại từ các bản ghi khác trong cùng một tập hợp. cơ sở dữ liệu.

Chọn Operasản xuất

Thao tác chọn một bộ dữ liệu cụ thể.

Trong ví dụ trên, CustomerName “Amazon" đã được chọn.

Mô hình quan hệ so với mô hình phân cấp và mạng lưới

Mô hình quan hệ đã thay thế hai phương pháp tiếp cận trước đó, và sự tương phản giải thích tại sao nó trở nên chiếm ưu thế. Bảng dưới đây trình bày ba phương pháp này cạnh nhau.

Yếu tố Mô hình quan hệ Mô hình phân cấp Mô hình mạng
Structure Bảng (quan hệ) Cây, từ cha mẹ đến con cái Đồ thị, nhiều-nhiều
Truy cập dữ liệu Khai báo, theo giá trị Điều hướng, theo đường đi Điều hướng bằng con trỏ
Mối quan hệ Khóa ngoại Mối liên hệ cha mẹ-con cái Tập hợp và con trỏ
Ngôn ngữ truy vấn SQL Mã thủ tục Mã thủ tục
Linh hoạt Cao Thấp Trung bình

Vì mô hình quan hệ xử lý dữ liệu theo giá trị chứ không phải bằng cách điều hướng các liên kết vật lý, nên một ngôn ngữ cấp cao như... SQL Có thể đưa ra truy vấn mà không cần biết dữ liệu được lưu trữ như thế nào.

Các phương pháp tốt nhất để tạo mô hình quan hệ

  • Dữ liệu cần được biểu diễn dưới dạng một tập hợp các mối quan hệ.
  • Mỗi mối quan hệ cần được thể hiện rõ ràng trong bảng.
  • Các hàng nên chứa dữ liệu về các thể hiện của một thực thể.
  • Các cột phải chứa dữ liệu về các thuộc tính của thực thể.
  • Mỗi ô trong bảng chỉ nên chứa một giá trị duy nhất.
  • Mỗi cột cần được đặt một tên riêng biệt.
  • Không thể có hai hàng giống hệt nhau.
  • Các giá trị của một thuộc tính phải thuộc cùng một miền.

Ưu điểm của mô hình cơ sở dữ liệu quan hệ

  • Đơn giản: Mô hình dữ liệu quan hệ trong hệ quản trị cơ sở dữ liệu đơn giản hơn so với mô hình phân cấp và mạng lưới.
  • Tính độc lập về cấu trúc: Cơ sở dữ liệu quan hệ chỉ quan tâm đến dữ liệu chứ không quan tâm đến cấu trúc, điều này có thể cải thiện hiệu suất của mô hình.
  • Dễ sử dụng: Mô hình quan hệ rất dễ sử dụng, vì các bảng bao gồm hàng và cột rất tự nhiên và dễ hiểu.
  • Khả năng truy vấn: Điều này cho phép các ngôn ngữ truy vấn cấp cao như SQL tránh được việc điều hướng cơ sở dữ liệu phức tạp.
  • Độc lập dữ liệu: Cấu trúc của cơ sở dữ liệu quan hệ có thể được thay đổi mà không cần phải thay đổi bất kỳ ứng dụng nào.
  • Có thể mở rộng: Về số lượng bản ghi hoặc hàng và số lượng trường, cơ sở dữ liệu có thể được mở rộng để nâng cao khả năng sử dụng.

Nhược điểm của mô hình quan hệ

  • Rất ít cơ sở dữ liệu quan hệ có giới hạn về độ dài trường, và giới hạn này không được vượt quá.
  • Cơ sở dữ liệu quan hệ đôi khi trở nên phức tạp khi lượng dữ liệu tăng lên và mối quan hệ giữa các phần dữ liệu trở nên phức tạp hơn.
  • Các hệ thống cơ sở dữ liệu quan hệ phức tạp có thể dẫn đến các cơ sở dữ liệu biệt lập, nơi thông tin không thể được chia sẻ giữa các hệ thống khác nhau.

Câu Hỏi Thường Gặp

Bậc (Degree) là số thuộc tính, hay cột, trong một bảng. Số lượng phần tử (Cardinality) là số bộ dữ liệu, hay hàng. Bậc mô tả chiều rộng của bảng và số lượng phần tử mô tả chiều cao của bảng.

Một quan hệ là một tập hợp toán học, và một tập hợp không chứa các phần tử trùng lặp. Khóa chính đảm bảo điều này, do đó mỗi bộ dữ liệu được xác định duy nhất và không có hai hàng nào giống hệt nhau.

Các mô hình AI thường được huấn luyện dựa trên các đặc trưng được trích xuất từ ​​các bảng quan hệ thông qua các phép nối và tổng hợp SQL. AI cũng có thể dịch một câu hỏi bằng tiếng Anh thông thường thành SQL, cho phép người dùng không chuyên về kỹ thuật truy vấn trực tiếp các quan hệ.

Đúng vậy. Với dữ liệu mẫu hoặc yêu cầu cụ thể, AI có thể đề xuất các bảng, khóa chính và khóa ngoại, cũng như dạng chuẩn hóa. Tuy nhiên, kết quả đầu ra vẫn cần được xem xét lại, vì quá trình chuẩn hóa phụ thuộc vào các quy tắc nghiệp vụ mà AI có thể không biết.

Trên thực tế, chúng được sử dụng thay thế cho nhau. Về mặt hình thức, một quan hệ là một tập hợp các bộ dữ liệu không có thứ tự và không có phần tử trùng lặp, trong khi một bảng là hình ảnh vật lý của nó, có thể hiển thị các hàng theo thứ tự đã lưu trữ.

Tóm tắt bài viết này với: