Quan hệ

Một phần của tài liệu Baig giảng cơ sở dữ liệu quan hệ - ĐH Mỏ Địa chất pptx (Trang 40 - 44)

I- Khỏi quỏt v CSDL & CSDL quan ềệ

14.Quan hệ

+Quan hệ được định nghĩa là tập con của tớch Đề cỏc D1*D2*...*Dn trong đú Di là miền giỏ trị của thuộc tớnh i.

Ta cú thể xem quan hệ như một bảng gồm nhiều cột chứa tờn cỏc thuộc tớnh, mỗi cột chứa miền gớa trị của thuộc tớnh, mỗi cột chứa miền giỏ trị của thuộc tớnh đú.

+ Mỗi hàng trong bảng đú là một bộ giỏ trị của quan hệ, là một hỡnh ảnh của thực thể.

15. Phụ thuộc hàm

Xột tập quan hệ Ri và hai tập thuộc tớnh G1,G2 luụn cú mặt cựng nhau trong cỏc Ri. Ta núi cú sự phụ thuộc của hàm giữa G1,G2 nếu với mọi giỏ trị của G1 chỉ cú thể kết hợp với một và chỉ một giỏ trị của G2 tại một thời điểm cho trước. Tớnh chất đỳng trong mọi Ri mà ở đú cú mặt G1,G2 .

16. Khoỏ

Là một hoặc một tập cỏc thuộc tớnh là nguồn của một phụ thuộc hàm cú đớch lần lượt là cỏc thuộc tớnh khỏc của quan hệ.

VD: + Sinh viờn(Số thẻ Sv, Họ tờn, Ngày sinh, Quờ quỏn) Số thẻ Sv --> Họ tờn

Số thẻ Sv --> Ngày sinh Số thẻ Sv --> Quờ quỏn

Như vậy Số thẻ SV là khúa của quan hệ Sinh viờn

+ Giảng dạy (Số phũng học,Thời gian, Tờn giảng viờn, Tờn mụn học) Số phũng học, Thời gian --> Tờn giảng viờn, Tờn mụn học

Như vậy (Số phũng học, Thời gian) là khoỏ của quan hệ Giảng dạy

I.4.Cỏc phộp toỏn trờn cỏc quan hệ

17. Phộp chiếu

Xột cỏc tập cỏc thuộc tớnh C và R là tập cỏc quan hệ định nghĩa trờn C. Phộp chiếu của R trờn tập G thuộc C là sự thu hẹp của R đến cỏc phần tử của G. Kớ hiệu

ΠG (R) .

18. Phộp nối

Nối hai quan hệ cú chứa cỏc thuộc tớnh hoặc tập cỏc thuộc tớnh như nhau, quan hệ thu được gồm cú cỏc hàng ở hai quan hệ ban đầu đặt nối nhau bằng cỏc thuộc tớnh giống nhau. Phộp nối hai quan hệ S và T kớ hiệu là S |><| T

19. Phộp tỏch

Mụt quan hệ R được gọi là phõn ró thành hai quan hệ S, T nếu thoả món : + S, T là cỏc phộp chiếu của R

+ R = S |><| T

Chỳ ý rằng khụng phải bất kỡ quan hệ nào cũng tỏch được

20. Phộp chọn : lấy ra cỏc hàng cú cỏc thuộc tớnh thoả món một số tiờu

chuẩn cho trước.

Ngoài ra cũn cú phộp hợp, phộp giao, phộp lấy hiệu cỏc quan hệ

II-Thiết kế hệ thống CSDL quan hệ

II.1.Phõn tớch tư liệu của XN

21. Xỏc định danh sỏch cỏc thuộc tớnh

Từ việc khảo sỏt thực tế, từ cỏc tin tức trao đổi với người dựng, phõn tớch cỏc bài toỏn nghiệp vụ, ta được một danh sỏch cỏc thuộc tớnh phục vụ cho xõy dựng CSDL. Mỗi một thuộc tớnh bao gồm :

+ tờn thuộc tớnh

+ kiểu thuộc tớnh (là tớnh toỏn hay khụng tớnh toỏn) + miền giỏ trị (adsbygoogle = window.adsbygoogle || []).push({});

+ quy tắc tớnh toỏn (nếu thuộc tớnh là tớnh toỏn) + ds cỏc tham số

VD : Xột quan hệ :

Bảng lương (Họ tờn, Đơn vị, Hệ số, Lương, Phụ cấp, Tổng lĩnh) Ta thấy ở đõy Lương, Tổng lĩnh là cỏc thuộc tớnh tớnh toỏn với cỏc qui tắc

Lương = Hệ số * 14400

Tổng lĩnh = Lương + Phụ cấp

22.

23. Tỡm phụ thuộc hàm giữa cỏc thuộc tớnh

Sau khi cú được một danh sỏch cỏc thuộc tớnh từ việc thu thập thụng tin và khảo sỏt thực tế, việc cần làm tiếp theo là xỏc định cỏc phụ thuộc hàm giữa cỏc thuộc tớnh. Chỳng ta xột một vớ dụ sau :

Quản lớ thư viện (Số thẻ, Số sỏch, Tờn sỏch, Loại sỏch, Ngày mượn, Tờn độc

giả, Địa chỉ độc giả)

Ta thấy cú cỏc phụ thuộc hàm sau :

Số thẻ mượn, Số sỏch --> Ngày mượn Số sỏch --> Tờn sỏch, Loại sỏch

Số thẻ mượn -->Tờn độc giả, Địa chỉ độc giả

II.2.Chuẩn hoỏ cỏc quan hệ

Coi danh sỏch cỏc thuộc tớnh thu được sau cỏc bước trờn cựng cỏc phụ thuộc hàm giữa chỳng là một quan hệ, chỳng ta thực hiện việc chuẩn hoỏ quan hệ này.

Mục đớch của quỏ trỡnh này là giảm bớt sự dư thừa thụng tin, bảo đảm tớnh duy nhất của mỗi thụng tin, do đú tiện lơi cho việc truy nhập và cập nhật cho CSDL.Quỏ trỡnh chuẩn hoỏ cú thể được tiến hành qua nhiều bước.

Ta xột vớ dụ sau :

Xe mỏy (Số xe, Số mỏy, Loại xe, Ngày đăng kớ, Tờn chủ xe, Số điờn thoại, Địa

chỉ)

+ Nếu một người cú nhiều xe thỡ lặp lại (Số điện thoại, Địa chỉ ) của chủ xe, như vậy dư thừa thụng tin.

+ Nếu một người chủ xe thay đổi địa chỉ thỡ phải sửa nhiều lần, như vậy cập nhật rời rạc

Như vậy biờn phỏp để khắc phục là tỏch ra quan hệ

Chủ xe(Tờn, Số điện thoại, Địa chỉ)

24.

25. Đưa quan hệ về dạng chuẩn 1 NF

Quan hệ chưa ở dạng chuẩn 1NF là quan hệ cũn chứa cỏc nhúm lặp lại. Ta đưa về dạng 1NF bằng cỏch như sau:

+ bỏ nhúm lặp lại ra khỏi quan hệ, chuyển nhúm đú thành một quan hệ mới + cộng thờm vào khoỏ của nú khoỏ của quan hệ ban đầu để tạo ra khoỏ phức hợp

VD: xột quan hệ :

R (Số hoỏ đơn, Ngày bỏn, Số khỏch hàng, Tờn khỏch hàng, Số sản phẩm, Tờn (adsbygoogle = window.adsbygoogle || []).push({});

sản phẩm, Lượng yờu cầu)

Nhúm (Số sản phẩm, Tờn sản phẩm, Lượng yờu cầu ) là nhúm lặp lại, ta cú thể tỏch R thành R1 và R2 như sau :

+ R1 (Số hoỏ đơn, Ngày bỏn, Số khỏch hàng, Tờn khỏch hàng, Số sản phẩm) + R2 (Số hoỏ đơn, Số sản phẩm, Tờn sản phẩm, Lương yờu cầu)

26.

27. Đưa quan hệ về dạng chuẩn 2NF

Quan hệ đó ở dạng 1NF nhưng chưa ở dạng 2NF là cú tồn tại phụ thuộc hàm cú nguồn là tập con của khoỏ. Ta đưa về dạng 2NF bằng cỏch như sau:

+ nhúm vào một quan hệ cỏc thuộc tớnh phụ thuộc hoàn toàn vào khoỏ và giữ lại khoỏ của quan hệ đú

+ nhúm vào một quan hệ khỏc cỏc thuộc tớnh phụ thuộc vào một phần của khoỏ, lấy phần đú làm khoỏ chớnh cho quan hệ .

VD : trong quan hệ R2 (Số hoỏ đơn, Số sản phẩm, Tờn sản phẩm, Lượng yờu cầu) cú phụ thuộc hàm : Số sản phẩm --> Tờn sản phẩm

Trong đú Số sản phẩm là một phần của khoỏ, ta tỏch R2 thành R3 và R4 như sau : + R3 (Số hoỏ đơn, Số sản phẩm, Lượng yờu cầu)

+ R4 (Số sản phẩm, Tờn sản phẩm)

28.

29. Dạng chuẩn 3NF

Quan hệ đó ở dạng 2NF nhưng chưa ở dạng 3NF là cú tồn tại cỏc phụ thuộc hàm giỏn tiếp. Đưa về dạng 3NF ta làm như sau :

+ giữ lại trong quan hệ ban đầu cỏc thuộc tớnh phụ thuộc trực tiếp vào khoỏ + nhúm vào một quan hệ khỏc cỏc thuộc tớnh bắc cầu, lấy thuộc tớnh bắc cầu làm khoỏ

VD : trong quan hệ

R1 (Số hoỏ đơn, Ngày bỏn, Số khỏch hàng, Tờn khỏch hàng, Số sản phẩm) Cú cỏc phụ thuộc hàm bắc cầu : Số hoỏ đơn --> Số khỏch hàng --> Tờn khỏch hàng Ta cú thể tỏch R1 thành R5 và R6 như sau : + R5 (Số hoỏ đơn,Ngày bỏn, Số khỏch hàng, Số sản phẩm) + R6 (Số khỏch hàng ,Tờn khỏch hàng) 30. Dạng chuẩn BCNF

Quan hệ đó ở dạng 3NF nhưng chưa ở dạng BCNF là cú tồn tại phụ thuộc hàm cú nguồn là thuục tớnh khụng thuộc khoỏ nhưng cú đớch là thuộc tớnh thuộc khoỏ .

Ta xột vớ dụ : R (Học sinh, Mụn học, Giỏo viờn, Điểm)

Phụ thuộc hàm Giỏo viờn --> Mụn học cú nguồn khụng thuộc khoỏ nhưng đớch thuộc khoỏ, ta tỏch R thành R1, R2 như sau :

+ R1 (Học sinh, Giỏo viờn, Điểm) + R2 (Giỏo viờn, Mụn học)

Cỏc phụ thuộc hàm đơn trị dừng lại ở dạng chuẩn BCNF (Boyce - Codd). Đến đõy chỳng ta cú thể kết thỳc cụng việc chuẩn hoỏ .

Lời kết :

Mụ hỡnh CSDL quan hệ là một cụng cụ rất tiện lợi để mụ tả cấu trỳc logic của cỏc CSDL . Như vậy ỏ mức logic mụ hỡnh này bao gồm cỏc quan hệ được biểu diễn bởi cỏc bảng. Do đú đơn vị của CSDL quan hệ là bảng, trong đú cỏc dũng của bảng là cỏc bản ghi dữ liệu cụ thể, cũn cỏc cột là cỏc thuộc tớnh .

Đối với người sử dụng cú thể núi CSDL quan hệ là một tập hợp cỏc bảng biến đổi theo thời gian .

Đụi với cụng việc thiết kế một CDSL thỡ cỏc cụng việc phõn tớch tư liệu của xớ nghiệp và chuẩn hoỏ là hết sức quan trọng, phục vụ cho việc cài đặt thực tế .

Tài liệu tham khảo :

- Cơ sở dữ liệu kiến thức và thực hành

PGS Vũ Đức Thi - NXB thống kờ 1997

- Nhập mụn cơ sở dữ liệu quan hệ (adsbygoogle = window.adsbygoogle || []).push({});

Lờ Tiến Vương - NXB Khoa học và kĩ thuật 1997

Một phần của tài liệu Baig giảng cơ sở dữ liệu quan hệ - ĐH Mỏ Địa chất pptx (Trang 40 - 44)