Bài tập xây dựng mô hình dữ liệu quan hệ

Bộ (tuple) • Là một dòng của quan hệ (trừ dòng tiêu đề - tên của các thuộcính) • Thể hiện dữ liệu cụ thể của các thuộc tính trong quan hệ

<Tung, Nguyen, 12/08/1955, 638 NVC Q5, Nam, 40000, 5>

Miền giá trị (domain) • Là tập các giá trị đơn gắn liền với một thuộc tính – Kiểu dữ liệu cơ sở • Chuỗi ký tự (string) • Số (integer) – Các kiểu dữ liệu phức tạp • • • • Tập hợp (set) Danh sách (list) Mảng (array) Bản ghi (record) Không được chấp nhận • Ví dụ – TENNV: string, DOM(TENNV) là tập hợp các chuỗi ký tự – LUONG: integer, DOM(LUONG) là tập hợp các số nguyên

Định nghĩa hình thức • Lược đồ quan hệ – Cho A 1 , A 2 , …, A n là các thuộc tính – Có các miền giá trị D 1 , D 2 , …, D n tươngứng – Ký hiệu R(A 1 :D 1 , A 2 :D 2 , …, A n :D n ) là một lược đồ quan hệ – Bậc của lược đồ quan hệ là số lượng thuộc tính trong lược đồ – Ví dụ : NHANVIEN( MANV:DOM(integer), TENNV:DOM(string), HONV:DOM(string), NGSINH:DOM(date), DCHI:DOM(string), PHAI:DOM(string), LUONG:DOM(integer), PHG:DOM(integer)) NHANVIEN là một lược đồ quan hệ bậc 8 mô tả đối tượng nhân viên

• Thể hiện quan hệ (relation states) – Một thể hiện quan hệ r của lược đồ quan hệ R(A 1 , A 2 , …, A n ), ký hiệu r(R), là một tậpác bộ r = {t 1 , t 2 , …, t k } – Trong đó mỗi t i là 1 danh sách có thứ tự của n giá trị t i =<v 1 , v 2 , …, v n > • Mỗi v j là một phần tử của DOM(A j ) hoặc giá trị NULL

Tóm tắt các ký hiệu • Lược đồ quan hệ R bậc n – R(A 1 , A 2 , …, A n ) • Tập thuộc tính của R – R + • Quan hệ (thể hiện quan hệ) – r, s, p, q • Bộ – t, u, v • Miền giá trị của thuộc tính A – DOM(A) • Giá trị tại thuộc tính A của bộ thứ t – t.A hay t[A]

Ràng buộc toàn vẹn • RBTV (Integrity Constraint) – Là những qui tắc, điều kiện cần được thỏa mãn cho mọi thể hiện của CSDL quan hệ • RBTV được mô tả khi định nghĩa lược đồ quan hệ • RBTV được kiểm tra khi các quan hệ có thay đổi về dữ liệu

Siêu khóa (super key) • Định nghĩa – Gọi SK là một tập con khác rỗng các thuộc tính của R – SK là siêu khóa khi

Hai bộ bất kỳ có các giá trị khác nhau tại tập thuộc tính siêu khóa • Nhận xét – Các bộ trong quan hệ phải khác nhau từng đôi một – Mọi lược đồ quan hệ có tối thiểu một siêu khóa

Ví dụ • Tìm siêu khóa

Khóaứng viên (candidate key) • Định nghĩa – Gọi K là một tập con khác rỗng các thuộc tính của R – K là khóaứng viên nếu thỏa đồng thời 2 điều kiện • K là một siêu khóa của R

Khóaứng viên là siêu khóa bé nhất • Nhận xét – Giá trị của khóaứng viên dùng để nhận biết một bộ trong quan hệ – Khóaứng viên là một đặc trưng của lược đồ quan hệ, không phụ thuộc vào thể thiện quanệ – Khóaứng viên được xây dựng dựa vàoý nghĩa của một số thuộc tính trong quan hệ – Lược đồ quan hệ có thể có nhiều khóaứng viên

Khóa chính (Primary key)  Khi cài đặt quan hệ – Chọn 1 khóa làm cơ sở để nhận biết các bộ • Khóa cóít thuộc tính hơn – Khóa được chọn gọi là khóa chính (Primary Key - PK) • Các thuộc tính khóa chính phải có giá trị khác NULL • Các thuộc tính khóa chính thường được gạch dưới

Tham chiếu • Một bộ trong quan hệ R, tại thuộc tính A nếu nhận một giá trị từ một thuộcính B của quan hệ S, ta gọi R tham chiếu S – Bộ được tham chiếu phải tồn tại trước

• Xét 2 lược đồ R và S – Gọi FK là tập thuộc tính khác rỗng của R – FK là khóa ngoại (Foreign Key) của R khi • Các thuộc tính trong FK phải có cùng miền giá trị với các thuộc tính khóa chính của S • Giá trị tại FK của một bộ t 1 R – Hoặc bằng giá trị tại khóa chính của một bộ t 2 S – Hoặc bằng giá trị NULL • Ví dụ

• Nhận xét – Một thuộc tính vừa có thể tham gia vào khóa chính, vừa tham gia vào khóa goại – Khóa ngoại có thể tham chiếu đến khóa chính trên cùng 1 lược đồ quan hệ – Có thể có nhiều khóa ngoại tham chiếu đến cùng một khóa chính – Ràng buộc tham chiếu = Ràng buộc khóa ngoại

Các đặc trưng của quan hệ • Thứ tự các bộ trong quan hệ là không quan trọng

• Thứ tự giữa các giá trị trong một bộ là quan trọng

Bộ <Nguyen, Tung, 12/08/1955, 638 NVC Q5, Nam, 40000 , 5>

khác

Bộ <Nguyen, Tung, 12/08/1955, 638 NVC Q5, 40000, Nam , 5>

• Mỗi giá trị trong một bộ – Hoặc là một giá trị nguyên tố – Hoặc là một giá trị NULL • Không có bộ nào trùng nhau

CHUYỂN ĐỔI MÔ HÌNH ER SANG MÔ HÌNH QUAN HỆ

Các đối tượng chuyển đổi

Các qui tắc chuyển đổi • (1) Tập thực thể – Các tập thực thể (trừ tập thực thể yếu) chuyển thành các quan hệ có cùng tên và tập huộc tính

• (2) Mối kết hợp – (2a) Nhiều-Nhiều • Tạo một quan hệ mới có – Tên quan hệ là tên của mối kết hợp – Thuộc tính là những thuộc tính khóa của các tập thực thể liên quan

• (2) Mối kết hợp – (2b) Một-Nhiều • Thêm vào quan-hệ-một thuộc tính khóa của quan-hệ-nhiều

• (2) Mối kết hợp – (2c) Một-Một • Hoặc thêm vào quan hệ này thuộc tính khóa của quan hệ kia • Hoặc thêm thuộc tính khóa vào cả 2 quan hệ

• (3) Thực thể yếu – Chuyển thành một quan hệ • Có cùng tên với thực thể yếu • Thêm vào thuộc tính khóa của quan hệ liên quan

Chủ đề