Khâi niệm về quan hệ

Một phần của tài liệu Cách thao tác trên cơ sở dữ liệu MySQL (Trang 32 - 33)

6. PHÂT BIỂU SQL DẠNG JOIN

6.1. Khâi niệm về quan hệ

Để phât triển ứng dụng Web bằng bất kỳ loại cơ sở dữ liệu năo, giai đoạn phđn tích thiết kế hệ thống cực kỳ quan trọng. Nếu kết quả phđn tích không tối ưu thì ứng dụng đó không thể đạt được giâ trị kỹ thuật cũng như giâ trị thương mại. Thiết kế cơ sở dữ liệu không tối ưu, chúng có thể dẫn đến việc chương trình chạy chậm vă không bền vững.

Một khi ứng dụng chạy chậm đi do cơ sở dữ liệu không tối ưu thì rất có thể bạn phải thiết kế vă xđy dựng lại từ đầu toăn bộ cấu trúc của chương trình vă cơ sở dữ liệu.

Xuất phât từ lý do năy, khi xđy dựng một ứng dụng thông tin quản lý, chúng ta cần phải qua những bước phđn tích thiết kế hệ thống kỹ lưỡng để có được mô hình quan hệ vă ERD trước khi đến câc mô hình chức năng chi tiết.

Tuy nhiín, trong lý thuyết một số kiến thức cơ bản bắt buộc bạn phải thực hiện theo mô hình hệ thống ứng với những quan hệ toăn vẹn, nhưng trong thực tế, do tính đặc thù của ứng dụng, thường bạn phải thiết kế lại mô hình theo nhu cầu cđn đối giữa độ phức tạp vă tính tối ưu.

Trong ứng dụng bân hăng qua mạng Test đê trình băy trong chương 3, khi quan tđm đến một hợp đồng trín mạng, ngoăi những thông tin liín lạc về khâch hăng, bạn cần phải lưu trữ dữ liệu khâc như chiết hăng mua, phương thức trả tiền, phương thức giao hăng,... Vấn đề được thảo luận ở đđy, mỗi hợp đồng có nhì6u mặt hăng chi tiết.

Trong trường hợp năy, chúng ta có 6 thực thể liín quan như sau, thực thể danh mục Customers

(thông tin liín lạc của khâch hăng), Orders (hợp đồng mua hăng), OrderDetails (chi tiết hăng mua),

Sơ đồ 8-1: Mô hình quan hệ

Giả sử rằng khi nhập số liệu văo cơ sở dữ liệu, ứng với hợp đồng có mê 101, của khâch hăng có tín Nguyễn Văn A, ... có hai sản phẩm chi tiết: 11 (Nước ngọt) vă 32 (xă phòng Lux).

Trong trường hợp năy bạn đang có một mẩu tin hợp đồng trong bảng tblCustomers, một mẩu tin hợp đồng trong bảng tblOrders vă hai mẩu tin trong bảng tblOrderDetails.

Nếu muốn biết thông tin hợp đồng của khâch hăng A, rõ răng bạn cần dùng phât biểu SELECT

với mệnh đề kết hợp từ 3 bảng trín. Kết quả trả về 2 mẩu tin lă sự kết hợp thông tin từ hai bảng

tblCustomers, tblOrderstblOrderDetails.

Khi thực thi phât biểu SQL dạng SELECT ứng với cơ sở dữ liệu như trín bạn phải duyệt qua hai mẩu tin.

Tất nhiín, khi viết ứng dụng thì điều năy chấp nhận được, vă có thể coi lă tối ưu. Giả sử rằng, ứng dụng năy được phât triển trín WEB cần lưu tđm đến vấn đề tối ưu tốc độ truy vấn thì sao?

Người thiết kế cơ sở dữ liệu trong trường hợp năy phải thay đổi lại cấu trúc để tăng tốc độ truy cập qua mạng khi xử lý trín cơ sở dữ liệu của người dùng.

1 - n 1 - n 1 - n Items Order Details Orders Customers

Một phần của tài liệu Cách thao tác trên cơ sở dữ liệu MySQL (Trang 32 - 33)

Tải bản đầy đủ (PDF)

(48 trang)