Quan hệ trong cơ sở dữ liệu là gì

- Mô hình dữ liệu là một tập hợp các khái niệm, dùng để mô tả CTDL, các thao tác dữ liệu, các ràng buộc dữ liệu của một CSDL

- Các loại mô hình dữ liệu:

  • Mô hình logic: (mô hình dữ liệu bậc cao) cho mô tả CSDL ở mức khái niệm và mức khung nhìn.
  • Mô hình vật lí: (mô hình dữ liệu bậc thấp) cho biết dữ liệu được lưu trữ thế nào.

b. Mô hình dữ liệu quan hệ

- Mô hình dữ liệu quan hệ được E.F.Codd đề xuất năm 1970. Trong khoảng 20 năm trở lại đây các hệ CSDL theo mô hình quan hệ được dùng rất phổ biến.

- Trong mô hình quan hệ:

  • Về mặt cấu trúc: Dữ liệu được thể hiện trong các bảng (hàng, cột).
  • Về mặt thao tác trên dữ liệu: Có thể cập nhật dữ liệu : Thêm, xoá, sửa.
  • Về mặt ràng buộc dữ liệu: Dữ liệu trong một bảng phải thoả mãn một số ràng buộc.

2. Cơ sở dữ liệu quan hệ

a. Khái niệm

- CSDL quan hệ: CSDL được xây dựng trên mô hình dữ liệu quan hệ.

- Hệ QTCSDL quan hệ : Hệ QTCSDL quan hệ dùng để tạo lập, cập nhật và khai thác CSDL quan hệ.

- Những đặc trưng của CSDL quan hệ:

  • Mỗi quan hệ có một tên phân biệt với tên các quan hệ khác.
  • Các bộ là phân biệt và thứ tự các bộ là không quan trọng.
  • Mỗi thuộc tính có một tên phân biệt và thứ tự các thuộc tính là không quan trọng.
  • Quan hệ không có thuộc tính đa trị hay phức hợp.

b. Ví dụ

- Để quản lý học sinh mượn sách ở một trường học, thông thường quản lí các thông tin sau: 

  • Thông tin người mượn sách
  • Thông tin sách
  • Thông tin mượn sách (ai mượn sách, mượn sách gì, thời gian mượn/ trả)

Quan hệ trong cơ sở dữ liệu là gì

c. Khóa và liên kết giữa các bảng

- Khóa: Khóa của một bảng là một tập gồm một hay một số thuộc tính của bảng phân biệt được các cá thể.

- Khoá chính:

  • Một bảng có thể có nhiều khóa. Trong các khóa của một bảng người ta thường chọn (chỉ định) một khóa làm khóa chính.
  • Khi nhập dữ liệu cho một bảng, giá trị của mọi bộ tại khóa chính không được để trống.

* Chú ý:

  • Mỗi bảng có ít nhất một khóa. Việc xác định khóa phụ thuộc vào quan hệ lôgic của các dữ liệu chứ không phụ thuộc vào giá trị của các dữ liệu.
  • Nên chọn khóa chính là khóa có ít thuộc tính nhất.

- Liên kết: Thực chất sự liên kết giữa các bảng là dựa trên thuộc tính khóa. Chẳng hạn thuộc tính số thẻ là khóa của bảng người mượn xuất hiện lại ở bảng mượn sách đó tạo nên liên kết giữa 2 bảng này.

Cơ sở dữ liệu quan hệ là một kiểu cơ sở dữ liệu, tại đó, dữ liệu có liên quan đến các thông tin khác trên cơ sở dữ liệu. Chúng được sử dụng để lưu trữ và tổ chức dữ liệu, với các tham chiếu giữa hai hoặc nhiều nguồn. Ở mức độ cơ bản nhất, các cơ sở dữ liệu quan hệ bao gồm một tập hợp các bảng có thể được truy cập và xây dựng lại theo nhiều cách khác nhau mà không phải sắp xếp lại bảng cơ sở dữ liệu.

Sẽ không có gì ngạc nhiên khi các cơ sở dữ liệu quan hệ dựa vào mô hình dữ liệu quan hệ: dữ liệu được tổ chức thành nhiều bảng bao gồm các cột và các hàng. Tất cả các bảng đều chứa thông tin về mối quan hệ, chẳng hạn như một loại sản phẩm. Hàng - được gọi là bản ghi hoặc bộ dữ liệu - được xác định bằng khóa duy nhất. Ví dụ, mỗi hàng là một sản phẩm hoặc một người cụ thể và các cột liệt kê các thuộc tính liên quan đến sản phẩm hoặc người này, chẳng hạn như màu sắc, kích thước, vv cho cơ sở dữ liệu sản phẩm hoặc tên, địa chỉ, số điện thoại cho bảng dữ liệu về người.

Một ứng dụng phổ biến của cơ sở dữ liệu quan hệ là với một cơ sở dữ liệu đơn đặt hàng. Có thể có một bảng cho một khách hàng, một bảng cho một đơn đặt hàng và một bảng cho một sản phẩm. Tất cả chúng liên quan với nhau - ví dụ, khách hàng có liên quan đến đơn đặt hàng, đơn đặt hàng liên quan đến bảng sản phẩm mà họ đã mua.

Một số cơ sở dữ liệu nổi tiếng phổ biến nhất có sẵn hiện nay là Microsoft SQL Server, Oracle Database, MySQL và IBM DB2. Tuy nhiên, cũng có rất nhiều cơ sở dữ liệu dựa trên đám mây như Dịch vụ cơ sở dữ liệu quan hệ Amazon (RDS), Google Cloud SQL, IBM DB2, Cơ sở dữ liệu Microsoft Azure SQL và Dịch vụ đám mây cơ sở dữ liệu Oracle.

Các ràng buộc trong mô hình quan hệ

Các ràng buộc là các điều kiện phải có trên tất cả các trạng thái quan hệ hợp lệ. Có ba loại ràng buộc chính trong mô hình quan hệ: Ràng buộc khóa, ràng buộc miền và ràng buộc toàn vẹn tham chiếu.

Ràng buộc khóa là nơi phải có ít nhất một tập hợp con nhỏ nhất của các thuộc tính trong quan hệ để có thể xác định một bộ dữ liệu duy nhất; một thuộc tính khóa không thể có giá trị NULL. Các ràng buộc khóa còn được gọi là ràng buộc thực thể.

Ràng buộc tên miền giới hạn phạm vi giá trị tên miền của một thuộc tính. Chúng còn xác định tính cá nhân và liệu một thuộc tính có thể có một giá trị null hay không. Nó cũng có thể chỉ định một giá trị mặc định cho một thuộc tính khi không có giá trị nào được cung cấp.

Ràng buộc toàn vẹn tham chiếu nói rằng mối quan hệ bảng phải luôn luôn nhất quán. Nói cách khác, trường khóa ngoài phải phù hợp với khóa chính được khóa ngoại tham chiếu. Bất kỳ thay đổi trường khóa chính nào phải được áp dụng cho tất cả các khoá ngoại, hoặc không gì cả.

Lịch sử ngắn gọn về cơ sở dữ liệu quan hệ

Khái niệm cơ sở dữ liệu quan hệ lần đầu tiên được nhà khoa học máy tính người Anh E. F. Codd đề xuất vào năm 1970. Ông đã phát minh ra mô hình quan hệ để quản lý cơ sở dữ liệu và cơ sở lý thuyết cho cơ sở dữ liệu quan hệ cùng với hệ thống quản lý cơ sở dữ liệu quan hệ trong khi làm việc cho IBM.

Codd cũng đã định nghĩa 12 quy tắc cấu thành một cơ sở dữ liệu quan hệ cũng như mười hai luật về xử lý phân tích trực tuyến (một thuật ngữ do chính ông đặt ra).

Ưu điểm và nhược điểm của cơ sở dữ liệu quan hệ

Cơ sở dữ liệu quan hệ có một số ưu điểm so với cơ sở dữ liệu truyền thống.

Chúng có tính toàn vẹn dữ liệu, người dùng chỉ cần thay đổi dữ liệu tại một trong các bảng và sau đó nó sẽ tự động cập nhật.

Dư thừa dữ liệu - một cơ sở dữ liệu quan hệ sẽ đảm bảo không có thuộc tính nào được lặp lại. Nó cũng đảm bảo tính nhất quán, một thuộc tính không thể được lưu trữ ở định dạng khác trong một tập tin khác.

Cơ sở dữ liệu có quan hệ gì?

Cơ sở dữ liệu quan hệ là một loại cơ sở dữ liệu lưu trữ và cung cấp quyền truy cập vào các điểm dữ liệu có liên quan đến nhau. Cơ sở dữ liệu quan hệ dựa trên mô hình quan hệ, một cách trực quan, đơn giản để biểu diễn dữ liệu trong bảng.

Database quan hệ là gì?

- Database quan hệ: Chúng các dữ liệu khác nhau được lưu trữ trong các bảng dữ liệu nhưng giữa chúng lại có mối liên hệ với nhau. Vì vậy, chúng mới có tên gọi database quan hệ”. Một số hệ quản trị hỗ trợ database quan hệ hiện rất được ưa chuộng bao gồm: MySQL, MS SQL server, Oracle,…

Mối quan hệ 1 1 là như thể nào?

Quan hệ 1-1 được sử dụng để liên kết một bản ghi từ một bảng với một và chỉ một bản ghi trong một bảng khác. Mối quan hệ một đối một được tạo ra khi cả hai trường kết nối khóa chính hoặc có các ràng buộc duy nhất. Để làm rõ hơn, hãy tiếp tục với cơ sở dữ liệu và các bảng chúng ta đã tạo ở bài trước.

Trọng một bảng khoa là gì?

Khóa chính là một trường hoặc tập hợp trường chứa các giá trị duy nhất xuyên suốt một bảng. Bạn có thể sử dụng các giá trị của khóa để tham chiếu tới toàn bộ các bản ghi, do mỗi bản ghi lại có một giá trị khóa khác nhau. Mỗi bảng chỉ có thể có một khóa chính.