1. Trang chủ
  2. » Công Nghệ Thông Tin

CHƯƠNG III. MÔ HÌNH DỮ LIỆU QUAN HỆ docx

5 388 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 190,47 KB

Nội dung

MỞ ĐẦU Mô hình cơ sở dữ liệu quan hệ là một mô hình được sử dụng rộng rãi trong đời sống xã hội của mọi tổ chức, cơ quan, xí nghiệp, doanh nghiệp ….Nói chung là ở bất cứ cơ quan nào cần

Trang 1

CHƯƠNG III MÔ HÌNH QUAN HỆ

I MỞ ĐẦU

Mô hình cơ sở dữ liệu quan hệ là một mô hình được sử dụng rộng rãi trong đời

sống xã hội của mọi tổ chức, cơ quan, xí nghiệp, doanh nghiệp ….Nói chung là ở

bất cứ cơ quan nào cần quản lý và xử lý các thông tin Hãy xem xét một vài ví dụ

sau:

Ví dụ 1: Để thực hiện tốt công tác quản lý, bất cứ cơ quan nào đều lưu trữ hồ

sơ cán bộ ví dụ như sau:

Ví dụ 2: Sổ theo dõi khách hàng của một khách sạn có thể có dạng như sau:

Dựa vào ví dụ trên ta thấy cho dù quản lý các thông tin khác nhau, nhưng

chúng ta cùng một đặc thù là:

+ Dữ liệu được trình bày dưới dạng bảng

+Mỗi bảng đều có dòng đầu chứa các tiêu đề cho các cột, về sau các tiêu đề

này gọi là thuộc tính

Chẳng hạn trong ví dụ 1 và 2 ta có các thuộc tính:

+ Mã các bộ, họ tên, ngày sinh, trình độ, quê quán là các thuộc tính

+ Mật khẩu, ngày đến, ngày đi, phòng, tiền là các thuộc tính

Mỗi thuộc tính đều có miền giá trị của nó (ví dụ: Ngày sinh có miền giá trị là

kiểu ngày (Date)… )

Trong mỗi bảng như vậy đều có một phần tử là một dòng

Về sau này các bảng như vậy gọi là một quan hệ

II CÁC KHÁI NIỆM CHÍNH

II.1.Miền, thuộc tính

- Miền là tập hợp các giá trị

- Thuộc tính là các dữ liệu mô tả một đặc trưng của một thực tế

II.2 Quan hệ

Quan hệ được hiểu là một tập con của tích Đề -các của môt hay nhiều miền

- Mỗi hàng (dòng) của quan hệ gọi là một bộ (typle)

- Quan hệ là một tập con của tích Đề-các D1´D2´ ……….´Dn gọi là quan hệ

n-Mã cán bộ Họ tên Ngày sinh Trình độ Quê quán CB1 Nguyễn Thị An 04/03/82 Cử nhân Tam kỳ

CB2 Phan Thị Bê 01/12/84 Cử nhân Quảng Bình CB3 Trần T.Thái Minh 25/11/85 Cử nhân Quảng Bình

Trang 2

ngôi Mỗi bộ của quan hệ có n thành phần và (n cột)

- Các cột của quan hệ gọi là các thuộc tính

Định nghĩa:

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 (i=1, ,n)

có miền giá trị tương ứng là dom(Ai) Người ta gọi r là quan hệ trên tập thuộc tính R nếu r là tập con của tích Đề -các của n miền dom (Ai ):

R Í dom (A1 ) ´ dom (A2 ) ´…´dom (An )

Chú ý

- Đương nhiên quan hệ r có thể bi thay đổi theo thời gian do việc thực hiên các phép toán cập nhật trên các quan hệ (bổ sung, loại bỏ, sửa đổi …), nói cách khác rõ hơn, điều này có nghĩa là một quan hệ còn là một hàm của thời gian

- Để chỉ một quan hệ r trên tập thuộc tính [A1, A2, …,An], ta dùng một bảng gồm n cột và p+1 hàng, hàng thứ nhất là tên các thuộc tính, các hàng còn lại mỗi hàng ứng với một bộ của quan hệ:

Ví dụ: Xét lược đồ quan hệ Lichbay 20-04 -06 (Mã chuyến bay, loại máy bay,

sân bay đi, sân bay đến, giờ bay, giờ đến)

Lúc đó có một quan hệ Lichbay 20-04-06( có thể như sau )

Biểu diễn một quan hệ : các thuộc tính của quan hệ Lichbay20-04-06 là

+ Mã chuyến bay, Loại máy bay, Sân bay đến, Ngày bay, Giơ bay, Giờ đến

Dom (Mã chuyến bay) = tập các mã chuyến bay do Tổng Công Ty Hàng không

VN quy định

Dom (Loại máy báy )= tập các mã máy bay mà công ty hàng không không đang có:

=Dom (ART72,ART73,A320A)

Dom (Sân bay đi )=Dom(Sân bay đến)=tập các mã sân bay mà công ty hàng không mà có chuyến bay đi đến

Dom(Ngày bay)=các ngày có chuyến bay

Dom (Giờ bay)=giờ trong ngày

Dom (Giờ đến)=giờ trong ngày

Còn:

T = (VN272,ART72, SGN, NHA, 20/04/06, 7:00, 8:00) là một bộ của quan hệ

Mã chuyến

bay

Loại máy bay

Sân bay

đi

Sân bay đến Ngày bay

Giờ bay

Giờ đến

Trang 3

Lichbay 20-04-06

Bộ này có ngữ nghĩa như sau: Chuyến bay số liệu VN

Do loại máy bay ATR72 thực hiện từ thành phố HỒ CHÍ MINH đi NHA TRANG vào ngày 20-04-06, cất cánh lúc 7h, tới Nha Trang vào lúc 8 h

Chú ý : Từ định nghĩa của quan hệ ta chú ý rằng :

- Thứ tự của các thuộc tính của lược đồ quan hệ không chú ý đến

- Nghĩa là: r={a,b,c}= r’= {b,a,c}

- Trong một quan hệ, không có hai bộ giống nhau

- Trong chương trình này, để dơn giản trong việc biểu diễn, ta dùng các ký tự

in hoa A,B,C…… để chỉ tên các thuộc tính trong lược đồ quan hệ, còn ai ,bj,

ck …… để chỉ các phần tử trong Dom(A),Dom(B), Dom(C),……X, Y là cá tập các thuộc tính của r(X,YÌ R)

II.3 Lược đồ quan hệ

Lược đồ quan hệ (relation scheme) là một cặp thứ tự : S= <R, F>

Trong đó R là tập hợp các thuộc tính của quan hệ f là tập hợp ràng buộc của quan hệ Ở đây ràng buộc trên tập thuộc tính {A1, ……,An } được hiểu là một thuộc tính chất trên tập tất cả cá quan hệ xác định trên tập thuộc tính này

Chú ý:

- Để đơn giản khi nói đến một lược đồ quan hệ khi mà không quan tâm đến các ràng buộc, ta ký hiệu một lược đồ quan hệ một cách đơn giản r(R) hay r(A1 …

An), với{A1, A2,… , An ) là tập thuộc tính

- Lược đồ quan hệ mô tả cấu trúc mô tả cấu trúc của quan hệ Tại mỗi thời điểm, lược đồ quan hệ có một thể hiện quan hệ cụ thể

- Trên mỗi lược đồ quan hệ, ta có thể có nhiều quan hệ

II 4 Thể hiện

Một thực thể (relation instance) của lược đồ quan hệ S= <R,F> là tập tất cả các bộ thỏa mãn tất cả các ràng buộc thuộc f

Để tiện khi trình bày các khái niệm ta có quy ước sau: Với một t thuộc thể hiển r của lược đồ quan hệ R và XÍ R, AÎ R lúc đó:

- t[A] là giá trị của thuộc tính A

- t[X] là bộ chỉ chứa các giá trị của các thuộc tính trong X

II.5.Khóa của quan hệ và lược đồ quan hệ:

Định nghĩa:

Cho r là một quan hệ định nghĩa trên lược đồ quan hệ <R,F>, KÍ R K được gọi

là khóa của R nếu thỏa mãn 2 tính chất sau:

1) F |=K® R (K+=R)

2) $!K’Ì K sao cho K’+ = R

Ví dụ: R(A,B,C,D), F= {AB®C, C®A, B®D}

AB là khóa do : AB+=ABCD = R

Trang 4

A+ = A ≠ R

D+ = BD ≠ R

CB là khóa do: CB+ = CBAD=R

C+ = CA

B = BD

· Nếu K chỉ có tính (1) K là siêu khóa

· Nếu K là khóa, A là một thuộc tính nào đó của K (AÎ K) ÞA là thuộc tính khóa Chú ý:

+ Khóa khóa tối thiểu

+ Siêu khóa Û khóa

+ Khóa Û thuộc tính nguyên tố

III CÁC KHÓA TRÊN CƠ SỞ DỮ LIỆU QUAN HỆ

Các phép tác động lên một cơ sở dữ liệu bao gồm: Chèn, loại bỏ, thay đổi… Trong mô hình cơ sở dữ liệu quan hệ Các phép tính này được áp dụng cho từng bộ phân của các quan trên cơ sở dữ liệu trên máy

Để thuận tiện khi giới thiệu các phép tính này, ta xét một quan hệ NHÂN VIÊN

NHÂN VIÊN (Ho_ten Nam_sinh Noi_lam_viec Luong)

t2 cb1 Nguyễn văn An 1973 Hội nhà văn 5.46 t2 Cb2 Trần thị Huê 1973 Viện chính trị 6.65 t3 Cb3 Hoàng hà 1972 Bộ GD& ĐT 4.42 t4 Cb4 Trần Văn 1972 Bộ Y Tế 6.67

III.1.Chèn thêm một bộ

Phép chèn thêm một bộ vào quan hệ r[A1,A2, ,An]

INSERT(r:A1=d1, A2=d2, An=dn)

Trong đó Ai(i=1 n) là tên các thuộc tính và diÎdom(Ai)

Ví dụ: Thêm một bộ t5 = {Vũ Văn Tiền, 1960, Bộ tài chính, 4, 28) vào quan hệ

NHÂN VIÊN ở trên:

INSERT(NHÂN VIÊN; Ho_ten =Vũ Văn Tiền, Năm_Sinh =1960,

Noi_Lam_Viec= Bộ tài chính, Lương =4.28)

Chú ý:

- Phép chèn có thể biểu diễn hình thức toán học như sau: r= r È t

- Nếu xem thứ tự của các trường là cố định, khi đó ta có thể biểu diễn phép

chèn một cách ngắn nhất gọn hơn: INSERT(r; d1,d2, ,dn)

Mục đích của phép chèn là thêm một bộ phận nhất định; kết quả của phép tính này có thể gây ra một số sai sốt vì những lý do sau:

· Bộ mới thêm vào không phù hợp với lược đồ quan hệ cho trước

· Một giá trị của một thuộc tính nào đó nằm ngoài miền giá trị của thuộc tính

đó

· Giá trị khóa của bộ mới có thể là giá trị đã có trong quan hệ đang lưu trữ

Trang 5

Do vậy, tùy từng hệ cụ thể sẽ có những cách khắc phục riêng

III.2 Loại bỏ một bộ:

Phép loại bỏ (DEL) là phép xóa một bộ ra khỏi một quan hệ cho trước Giống như phép chèn, phép loại bỏ có dạng biểu diễn hình thức toán học: r= r-t

DEL (r; A1=d1, A2=d2, ,An=dn)

hoặc ngắn gọn hơn có thể viết DEL(r; d1,d2, ,dn)

Ví dụ: khi cần loại bỏ một bộ, chẳng hạn t2, từ quan hệ NHÂN VIÊN, ta viết:

DEL(NHÂN VIÊN; Trần Tuệ, 1950, Viện văn học, 4,45)

Chú ý: Tất nhiên không phải lúc nào phép loại bỏ cũng gần đủ thông tin về cả

bộ cần loại Khi ta có giá trị của bộ đó tại các thuộc tính khóa K={B1, ,Bn}, lúc đó phép loại bỏ có dạng ngắn gọn sau:

DEL ( r: B1 = e1, B2 = e2, , Bi= ei)

III.3 Thay đổi giá trị các thuộc tính của một bộ

Khi cần điều chỉnh một số giá trị nào đó tại một thuộc tính, lúc đó ta sử dụng phép thay đổi

Gọi tập { C1, ,Cp} Í {A1,…,An} là tập các thuộc tính mà tại đó các giá trị của

bộ cần thay đổi: CH( r; A1= d1, A2= d2, , An= dn; C1= e1,C2= e2, ,Cp= e)

Nếu K = {B1, ,Bm} là khóa của quan hệ, khi đó chỉ cần viết:

CH (r, B1=b1, B2= b2, , Bm= bm; C1= e1,C2=e2, , Cp= ep)

Ví dụ: Khi cần thay đổi lương của ông Hoàng An trong quan hệ NHÂN VIÊN ta

viết lệnh như sau:

CH(NHÂN VIÊN; Ho_ ten = Hoàng An, Lương = 4.92)

Chú ý:

- Phép thay đổi là phép rất thông dụng; chúng ta có thể coi nó là tổ hợp của phép loại bỏ một bộ và phép chèn một bộ mới Vì phép thay đổi cũng phạm những sai sót như là phép loại bỏ và phép chèn

- Phép thay đổi có dạng toán học: r=r\ t È t’

Ngày đăng: 29/07/2014, 05:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w