Chơng I Hệ cơ sở dữ liệu
quan hệ và ngôn ngữ hỏi có cấu trúc sql
A - Hệ cơ sở dữ liệu quan hệ
1. Quan hệ và các phép toán đại số quan hệ
1.1. Quan hệ
Quan hệ là một tập con của tích Đề-các của một hoặc nhiều miền. Nh vậy một quan hệ có thể là vô hạn. ở đây
luôn luôn giả thiết rằng quan hệ là một tập hữu hạn. Mỗi hàng của một quan hệ gọi là một bộ, khi đó quan hệ là tập
con của tích Đề-các D1ìD2ìD3ì...ìDn là quan hệ n ngôi. Mỗi bộ của quan hệ có n thành phần (thờng hiểu là n cột).
Các cột của quan hệ gọi là các thuộc tính. Có thể định nghĩa quan hệ theo cách hình thức nh sau:
Gọi R={A1, A2, ..., An} là tập hữu hạn các thuộc tính, mỗi thuộc tính Ai với i=1, 2, ..., n có miền giá trị tơng
ứng là dom(Ai). Quan hệ trên tập thuộc tính R={ A1, A2, ..., An} là tập con của tích Đề-các, r dom(A1) ì dom(A2)
ì...ì dom(An). Khi đó kí hiệu r(R) hoặc r(A1, A2, ..., An) là quan hệ.
1.2. Khoá của lợc đồ quan hệ
Khoá (Key) của quan hệ r trên tập thuộc tính R={A1, ...An} là tập con KR sao cho bất kì hai bộ khác nhau t1,
t2 r luôn thoả t1(K)t2(K).
Điều này có nghĩa là lợc đồ quan hệ không có hai bộ giống nhau trên mọi thuộc tính của R.
1.3. Các phép toán đại số quan hệ
Gọi r và s là quan hệ trên tập thuộc tính R={A1, A2,...,An} và R1={B1,B2,...,Bn}.
Giả thiết rằng quan hệ r, s là tập hữu hạn các bộ. Đối với các phép hợp, giao và trừ, hai quan hệ tham gia phải là
khả hợp.
1* Hợp của hai quan hệ
Kí hiệu hợp của hai quan hệ r và s là r s.
Biểu diễn hình thức có dạng: r s ={t/ts hoặc tr hoặc tr và s}
2* Phép giao
Kí hiệu giao của hai quan hệ r và s là r s.
Biểu diễn hình thức có dạng: r s ={t/tr và s}
3* Phép trừ
Kí hiệu r-s là tập các bộ thuộc r nhng không thuộc s.
Biểu diễn hình thức có dạng: r-s={t/t r và t s}.
1* Tích Đề-các trên các quan hệ
Tích Đề-các của r và s là tập (n*m) bộ với n thành phần đầu có dạng một bộ thuộc r và m thành phần sau có
và các nút cha đợc liên hệ theo một mối liên hệ xác định.
9* Mô hình mạng: Mô hình đợc biểu diễn là một đồ thị có hớng.
10* Mô hình quan hệ: Mô hình này dựa trên cơ sở khái niệm lý thuyết tập hợp của các quan hệ, tức là tập các k-
bộ.
3. Mô hình cơ sở dữ liệu quan hệ
Khái niệm toán học của mô hình CSDL quan hệ (hiểu theo nghĩa lí thuyết tập hợp) thì quan hệ là tập con của
tích Đề-các (đợc gọi là miền). Gọi D1, D2, D3..... Dn là n miền. Tích Đề-các n miền là D1ìD2ìD3ì...ìDn là tập tất
cả n bộ (v1,v2,v3,...,vn) sao cho viDi, với i=1, 2, ..., n.
4. Hệ quản trị cơ sở dữ liệu
Hệ chơng trình để có thể quản lý, tổ chức lu trữ, cho phép tìm kiếm, thay đổi, thêm bớt dữ liệu trong CSDL đợc
gọi là Hệ quản trị CSDL. Hệ quản trị CSDL có nhiệm vụ rất quan trọng là giúp ngời dùng có thể sử dụng đợc hệ
thống mà ít nhiều không cần quan tâm tới thuật toán chi tiết hoặc biểu diễn dữ liệu trong máy tính .
5. Hệ tiên đề phụ thuộc hàm
Khái niệm phụ thuộc hàm trong một quan hệ là một khái niệm rất quan trọng đối với việc xây dựng mô hình dữ
liệu. Trong các hệ thống thông tin quản lý khi cần thiết kế CSDL quan hệ thờng đòi hỏi phải chọn lợc đồ các quan hệ.
Việc chọn các lợc đồ này tốt hơn hay xấu hơn lợc đồ khác đợc dựa trên một số các tiêu chuẩn cụ thể nào đó. Do đó
cần phải nghiên cứu tính chất cơ bản cũng nh các thuật toán để có thể nhận đợc những tập lợc đồ phù hợp. Trọng tâm
của công việc này là xét đến các phụ thuộc dữ liệu, nghĩa là các mối ràng buộc có thể có hiện hữu của l ợc đồ. Chẳng
hạn nh thuộc tính này xác định duy nhất thuộc tính kia. Ví dụ trong công việc quản lý tập hoá đơn thì mã hoá đơn
xác định duy nhất một khách hàng thanh toán hoá đơn đó.
Cho R(U) là một lợc đồ quan hệ với U = {A1, A2, ...An} là tập hợp các thuộc tính. Giả sử có X và Y là tập con
của U.
Nói rằng X
Y (X xác định hàm Y hay Y phụ thuộc vào hàm X) nếu bất kì r là một quan hệ xác định trên
R(U) sao cho bất kì hai bộ t1, t2 r mà
t1[X] = t2[X] thì t1[Y] = t2[Y]
Phụ thuộc hàm kí hiệu là FD. Cần lu ý rằng ở đây chỉ xét các phụ thuộc hàm thoả mãn cho mọi quan hệ trên lợc
đồ tơng ứng của nó. Không thể xem xét một phụ thuộc hàm thoả mãn quan hệ r đặc biệt (ví dụ quan hệ rỗng) của một
lợc đồ R rồi sau đó qui nạp rằng phụ thuộc đó là thoả mãn trên R.
từ
F. Do đó đòi hỏi phải có các hệ tiên đề. Tập các qui tắc đợc Armstrong đa ra năm 1974 và thờng đợc gọi là hệ tiên đề
Armstrong.
Gọi R(U) là lợc đồ quan hệ với U = {A1, A2, ... An} là tập các thuộc tính và X, Y, Z U. Hệ tiên đề Armstrong
bao gồm:
11* A1 (Phản xạ): Nếu YX thì X
Y
12* A2 (Tăng trởng): Nếu ZU và X
Y thì XZ
YZ, trong đó kí hiệu XZ là hợp của hai tập hợp X, Z
thay cho kí hiệu XZ
13* A3 (Bắc cầu): Nếu X
Y và Y
Z thì X
Z
Với những lập luận trên có thể rút ra những nhận xét: Giả sử F là tập các phụ thuộc hàm đúng trên quan hệ r.
Nếu X
Y là một phụ thuộc hàm đợc suy dẫn từ F nhờ hệ tiên đề Armstrong thì X
Y là đúng trên quan hệ r.
Những kết luận suy ra từ hệ tiên đề Armstrong:
a. Luật hợp: Nếu X
Dạng chuẩn thứ ba
(Third Normal Form - 3NF)
Sơ đồ quan hệ giữa các dạng chuẩn dữ liệu
1NF
Một lợc đồ quan hệ R đợc gọi là ở dạng chuẩn một (1NF) nếu và chỉ nếu toàn bộ các miền có mặt trong R đều
chỉ chứa một giá trị nguyên tố hay nói một cách khác lợc đồ quan hệ phải tồn tại khoá.
Định nghĩa này cho thấy bất kì quan hệ chuẩn nào cũng ở dạng 1NF.
2NF
Lợc đồ quan hệ R ở dạng chuẩn thứ hai nếu nó đã ở dạng chuẩn thứ nhất và nếu mỗi thuộc tính không khoá của
R là phụ thuộc hàm đầy đủ vào khoá chính.
3NF
Trớc khi đa ra định nghĩa của dạng chuẩn 3NF, cần đa thêm khái niệm phụ thuộc bắc cầu:
Cho một lợc đồ quan hệ R(U), X là tập con của các thuộc tính U và A là một thuộc tính thuộc U. Thuộc tính A
đợc gọi là phụ thuộc bắc cầu vào X trên R nếu tồn tại một tập con Y của sao cho X
Y thì Y
A nhng
Y
/
X (và không xác định hàm) với A XY.
Tính bắc cầu có thể đợc biểu diễn theo sơ đồ sau:
X
A
Y
Sơ đồ thuộc tính quan hệ phụ thuộc bắc cầu
Qua sơ đồ có thể thấy rằng A có thể xác định hàm Y. Trong trờng hợp A