Thứ Bảy, 11 tháng 6, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 4 - Làm việc với các truy vấn đa bảng

James Perry, Richard Newmark


Chương 4
Tạo và dùng câu truy vấn


Làm việc với các truy vấn đa bảng


Cơ sở dữ liệu The Coffee Merchant chứa một số bảng được gọi là ở dạng chuẩn để tránh những vấn đề như dư thừa và bất nhất dữ liệu vốn phát sinh khi dùng bảng phi chuẩn. Dữ liệu xuất hiện trong nhiều bảng có quan hệ với nhau, và cơ sở dữ liệu phải nối các bảng có quan hệ với nhau để tra cứu thông tin xuất hiện trong nhiều bảng. Bạn nối các bảng có quan hệ với nhau bằng cách chỉ định cột chung trong cặp bảng. Trong Access, bạn có thể nối bảng bằng cách hiển thị cấu trúc bảng trong cửa sổ Relationships rồi kéo khóa chính từ bảng này thả vào khóa ngoại của bảng kia (hay ngược lại). Cách này áp dụng cho mọi cặp bảng có quan hệ với nhau. Chẳng hạn, bạn có thể nối bảng khách hàng tblCustomer với bảng hóa đơn tblInvoice trên cột CustID thuộc bảng tblCustomer và trường CustomerID thuộc bảng tblInvoice. Cột xác định dòng nào thuộc bảng này quan hệ với dòng nào thuộc bảng kia ở đây không được đặt trùng tên, nhưng có thể có tên trùng. Sẽ thuận tiện nếu dùng cùng tên để đặt cho các cột liên hệ hai bảng; điều này giúp dễ dàng phát hiện khóa chính khóa ngoại và dễ dàng nối bảng.

Liên kết hai hay nhiều bảng thì dễ. Bạn nối khóa chính của bảng này với khóa ngoại của bảng kia để chỉ định rõ là hai bảng có quan hệ với nhau. Trong nhiều trường hợp, Access có thể tự động xác định mối quan hệ khi hai bảng có trường cùng tên hay chúng có quan hệ thường trực được hình thành nhờ cửa sổ quan hệ Relationships. Nếu Microsoft Access không tự động tạo quan hệ cho bạn, bạn có thể tự nối bảng. Mặt khác, nếu Microsoft Access áp đặt một quan hệ sai giữa hai bảng, bạn có thể dễ dàng phá bỏ quan hệ đó và tạo quan hệ đúng.

Bạn có thể tạo quan hệ thường trực giữa các bảng bằng cách áp đặt các liên kết trong cửa sổ Relationships, hay bạn có thể tạo quan hệ tạm thời giữa các bảng bên trong từng truy vấn. Cách làm sau chỉ tác động đến truy vấn nào có nối bảng, không tác động đến các truy vấn khác. Bạn tự nối bảng trong câu truy vấn bằng cách thêm tất cả các bảng có quan hệ với nhau qua hộp thoại Show Table. Sau đó bạn có thể tạo liên kết giữa từng cặp bảng bằng cách chọn trường khóa chính ở bảng này rồi kéo đến trường khóa ngoại tương ứng ở bảng kia. Bạn tạo quan hệ thường trực bằng cửa sổ quan hệ Relationships để Access ghi nhớ cho mọi đối tượng có tham chiếu đến bảng quan hệ. Chỉ việc kích DATABASE TOOLS rồi kích Relationships trong nhóm Show/Hide. Một khi bạn nối bảng trong cửa sổ Relationships, bạn không cần làm thế nữa trong từng truy vấn. Access sẽ nhớ các quan hệ bảng mà bạn đã tạo trong cửa sổ Relationships cho đến khi bạn xóa chúng một cách tường minh.

Không có nhận xét nào:

Đăng nhận xét