Mối quan hệ Bảng và những khóa ngoạ

Một phần của tài liệu Mastering C# Database Programming pot (Trang 34 - 35)

Những đường nối những bảng trong Hình 2.11, trình bày trước đó, cho thấy những mối quan hệ giữa những bảng. Dấu vô cực (∞) ở cuối của mỗi đường chỉđịnh một mối quan hệ một- nhiều giữa hai bảng có nghĩa là một hàng trong một bảng có thể liên quan đến một hoặc nhiều hàng trong bảng khác.

Chẳng hạn, bảng khách hàng (Customers) có một mối quan hệ một- nhiều với bảng Orders (đơn đặt) . Mỗi khách hàng có thểđặt nhiều đơn đặt. Tương tự, mối quan hệ một- nhiều giữa những đơn đặt (orders) và bảng những chi tiết đơn đặt (Order Details) có nghĩa là mỗi đơn đặt có thể bao gồm nhiều chi tiết đơn đặt (bạn có thể

hiểu một chi tiết đơn đặt như một hàng trong một đơn liệt kê những món hàng , với mỗi hàng tham chiếu tới một sản phẩm riêng biệt được đặt mua). Cuối cùng, mối quan hệ một- nhiều giữa bảng những sản phẩm (Products) và những chi tiết đơn đặt (Order Details) có nghĩa là mỗi sản phẩm có thể xuất hiện trong nhiều chi tiết đơn đặt (Order Details).

Những mối quan hệ một- nhiều được mô hình hóa sử dụng những khóa ngoại. Chẳng hạn, bảng những đơn đặt có một cột tên là CustomerID. Cột này liên quan đến cột CustomerID trong bảng những khách hàng thông qua một khóa ngoại. Điều này có nghĩa là mọi hàng trong bảng những đơn đặt phải có một hàng tương ứng trong bảng những khách hàng với một giá trị tương tự như cột CustomerID. Chẳng hạn, nếu một hàng trong bảng những đơn đặt (Orders) có một CustomerID là ALFKI, thì cũng phải có một hàng trong bảng những khách hàng (Customers) với một CustomerID là ALFKI. Do mối quan hệ giữa những khách hàng và những đon đặt là một- nhiều, điều này có nghĩa là có thể có nhiều hàng trong những đơn đặt với cột CustomerID giống như

vậy. Dựa trên khái niệm này, Bạn có thể hiểu khóa ngoại như một con trỏ từ bảng những đơn đặt đến bảng những khách hàng.

Thường thường, bảng chứa khóa ngoại được hiểu như bảng con, và bảng chứa cột được tham chiếu bởi khóa ngoại được hiể như bảng cha. Chẳng hạn, bảng những đơn đặt là bảng con, và bảng những khách hàng là bảng cha. Những mối quan hệ khóa ngoại thường được hiểu như những mối quan hệ cha con.

Ghi chú:

Thuật ngữrelational (có quan hệ ) từrelational database (cơ sở dữ liệu quan hệ ) đến từ thực tế là những bảng có thể liên quan lẫn nhau thông qua những khóa ngoại.

Bạn có thể quản lý những mối quan hệ cho một bảng với Enterprise Manager (trình quản lý doanh nghiệp) bằng cách chọn Table từ nút Tables , kích nút chuột phải, và chọn Design Table (Thiết kế bảng). Rồi bạn kích nút Manage Relationships (Quản lý những mối quan hệ) trên thanh công cụ của table designer (cửa sổ thiết kế

Hình 2.12: Mối quan hệ giữa bảng Customers và Orders

Những bảng Customers và Orders có liên quan với nhau thông qua cột CustomerID. Cột CustomerID trong bảng những đơn đặt là khóa ngoại. Mối quan hệ giữa hai bảng được gán tên là “FK_Orders_Customers” .

Một phần của tài liệu Mastering C# Database Programming pot (Trang 34 - 35)