Bài 7: Liên kết giữa các bảng


1. Khái niệm

Trong CSDL, các bảng thường có liên quan đến nhau. Liên kết được tạo giữa các bảng, sẽ giúp Microsoft Access:

- Quản lý dữ liệu được hợp lý hơn;

- Bảo vệ các ràng buộc toàn vẹn của dữ liệu;

- Cho phép tổng hợp dữ liệu từ nhiều bảng.

2. Kỹ thuật tạo liên kết giữa các bảng

Ví dụ: Cho CSDL như trong 3 bảng dưới đây:

 

Bảng 1. Bảng KHACH_HANG

 

 

Bảng 2. Bảng MAT_HANG

 

Bảng 3. Bảng HOA_DON

Bước 1. Xác định trường để thiết lập liên kết

- KHACH_HANG: Ma_khach_hang, Ho_ten, Dia_chi

- MAT_HANG: So_don, Ma_khach_hang, Ma_hang, So_luong, Ngay_giao

- HOA_DON: Ma_hang, Ten_hang, Don_gia

Bước 2.  Mở CSDL. Nháy nút  hoặc chọn DatabaseTools -> Relationships để mở cửa sổ Relationships

Hình 1. Mở cửa sổ Relationships

Bước 3. Nháy nút   hoặc nháy nút phải chuột vào vùng trống của sổ Relationships chọn ShowTable... trong bảng chọn tắt. Khi đó xuất hiện hộp thoại Show Table (hình 2):

Hình 2. Hộp thoại Show Table

- Trong hộp thoại Show Table chọn các bảng (HOA_DON, KHACH_HANG, MAT_HANG) bằng cách chọn tên bảng rồi nháy Add.

- Cuối cùng nháy Close để đóng cửa sổ Show Table.

Bước 4. Thiết lập mối liên kết giữa các bảng

- Các bảng vừa chọn xuất hiện trên cửa sổ Relationships (hình 3). 

Hình 3. Cửa sổ Relationships

- Kéo trường liên kết ở bảng khách hàng và thả vào trường tương ứng ở bảng hoá đơn.

- Tương tự thiết lập liên kết bảng hóa đơn và bảng mặt hàng.

3. Xóa liên kết giữa các bảng

Bước 5. Nháy nút  để đóng cửa sổ Relationships. Nháy Yes để lưu lại liên kết.

Thực hiện theo các bước sau:

- Bước 1. Nháy chuột vào đường liên kết;

- Bước 2. Nhấn phím Delete trên bàn phím và chọn Yes;

- Bước 3. Chọn Save để lưu lại.

4. Sửa liên kết

Thực hiện theo các bước sau:

Bước 1. Nháy đúp vào đường nối thể hiện liên kết để mở hộp thoại Edit Relationships;

Bước 2. Thực hiện các thay đổi cần thiết. Chọn OK;

Bước 3. Chọn Save để lưu lại.

5. Câu hỏi

Em hãy cho biết các điều kiện cần thiết để liên kết 2 bảng với nhau?

Gợi ý trả lời:

Điều kiện liên kết giữa 2 bảng:

- Liên kết được thiết lập dựa trên thuộc tính khóa (Khóa chính hoặc khóa ngoại);

- Các trường dùng để liên kết giữa 2 bảng phải có cùng kiểu dữ liệu (Data Type).

1. Khái niệm

Trong CSDL, các bảng thường có liên quan đến nhau. Liên kết được tạo giữa các bảng, sẽ giúp Microsoft Access:

- Quản lý dữ liệu được hợp lý hơn;

- Bảo vệ các ràng buộc toàn vẹn của dữ liệu;

- Cho phép tổng hợp dữ liệu từ nhiều bảng.

2. Kỹ thuật tạo liên kết giữa các bảng

Ví dụ: Cho CSDL như trong 3 bảng dưới đây:

 

Bảng 1. Bảng KHACH_HANG

 

 

Bảng 2. Bảng MAT_HANG

 

Bảng 3. Bảng HOA_DON

Bước 1. Xác định trường để thiết lập liên kết

- KHACH_HANG: Ma_khach_hang, Ho_ten, Dia_chi

- MAT_HANG: So_don, Ma_khach_hang, Ma_hang, So_luong, Ngay_giao

- HOA_DON: Ma_hang, Ten_hang, Don_gia

Bước 2.  Mở CSDL. Nháy nút  hoặc chọn DatabaseTools -> Relationships để mở cửa sổ Relationships

Hình 1. Mở cửa sổ Relationships

Bước 3. Nháy nút   hoặc nháy nút phải chuột vào vùng trống của sổ Relationships chọn ShowTable... trong bảng chọn tắt. Khi đó xuất hiện hộp thoại Show Table (hình 2):

Hình 2. Hộp thoại Show Table

- Trong hộp thoại Show Table chọn các bảng (HOA_DON, KHACH_HANG, MAT_HANG) bằng cách chọn tên bảng rồi nháy Add.

- Cuối cùng nháy Close để đóng cửa sổ Show Table.

Bước 4. Thiết lập mối liên kết giữa các bảng

- Các bảng vừa chọn xuất hiện trên cửa sổ Relationships (hình 3). 

Hình 3. Cửa sổ Relationships

- Kéo trường liên kết ở bảng khách hàng và thả vào trường tương ứng ở bảng hoá đơn.

- Tương tự thiết lập liên kết bảng hóa đơn và bảng mặt hàng.

3. Xóa liên kết giữa các bảng

Bước 5. Nháy nút  để đóng cửa sổ Relationships. Nháy Yes để lưu lại liên kết.

Thực hiện theo các bước sau:

- Bước 1. Nháy chuột vào đường liên kết;

- Bước 2. Nhấn phím Delete trên bàn phím và chọn Yes;

- Bước 3. Chọn Save để lưu lại.

4. Sửa liên kết

Thực hiện theo các bước sau:

Bước 1. Nháy đúp vào đường nối thể hiện liên kết để mở hộp thoại Edit Relationships;

Bước 2. Thực hiện các thay đổi cần thiết. Chọn OK;

Bước 3. Chọn Save để lưu lại.

5. Câu hỏi

Em hãy cho biết các điều kiện cần thiết để liên kết 2 bảng với nhau?

Gợi ý trả lời:

Điều kiện liên kết giữa 2 bảng:

- Liên kết được thiết lập dựa trên thuộc tính khóa (Khóa chính hoặc khóa ngoại);

- Các trường dùng để liên kết giữa 2 bảng phải có cùng kiểu dữ liệu (Data Type).

Bài học tiếp theo

Bài tập và thực hành 5: Liên kết giữa các bảng
Bài 8: Truy vấn dữ liệu
Bài tập và thực hành 6: Mẫu hỏi trên một bảng
Bài tập và thực hành 7: Mẫu hỏi trên nhiều bảng
Bài 9: Báo cáo và kết xuất báo cáo
Bài tập và thực hành 8: Tạo báo cáo
Bài tập và thực hành 9: Bài thực hành tổng hợp

Bài học bổ sung