Bài giảng Cơ sở dữ liệu - Chương 6: Ràng buộc toàn vẹn
lượt xem 42
download
Bài giảng Cơ sở dữ liệu chương 6: Ràng buộc toàn vẹn trang bị cho sinh viên các kiến thức về bối cảnh ràng buộc toàn vẹn, bảng tầm ảnh hưởng, liên thuộc tính, liên quan hệ, thuộc tính tổng hợp, cài đặt ràng buộc toàn vẹn. Tham khảo bài giảng để nắm bắt một cách chi tiết nội dung môn học.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Cơ sở dữ liệu - Chương 6: Ràng buộc toàn vẹn
- Chương 6 Ràng buộc toàn vẹn
- Nội dung chi tiết Khái niệm Các đặc trưng của RBTV Phân loại Cài đặt Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 2
- Khái niệm RBTV (Integrety Constraints) xuất phát từ những qui định hay điều kiện Trong thực tế Trong mô hình dữ liệu Các thao tác làm thay đổi dữ liệu không nên được thực hiện một cách tùy tiện vì có thể đưa CSDL đến một tình trạng ‘xấu’ RBTV là một điều kiện được định nghĩa trên một hay nhiều quan hệ khác nhau Các RBTV là những điều kiện bất biến mà mọi thể hiện của QH đều phải thỏa ở bất kỳ thời điểm nào Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 3
- Khái niệm (tt) Tại sao cần phải có RBTV? Bảo đảm tính kết dính của các thành phần cấu tạo nên CSDL Bảo đảm tính nhất quán của dữ liệu Bảo đảm CSDL luôn biểu diễn đúng ngữ nghĩa thực tế Ví dụ Mức lương của một người nhân viên không được vượt quá trưởng phòng (R1) Người quản lý trực tiếp (của một nhân viên) phải là một nhân viên trong công ty (R2) Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 4
- Nội dung chi tiết Khái niệm Các đặc trưng của RBTV Bối cảnh Nội dung Bảng tầm ảnh hưởng Phân loại Cài đặt Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 5
- Bối cảnh Bối cảnh của một RBTV Là những quan hệ có khả năng bị vi phạm RBTV khi thực hiện các phép cập nhật Ví dụ (R1) Mức lương của một người nhân viên không được vượt quá trưởng phòng Các phép cập nhật ∗ Cập nhật lương cho nhân viên ∗ Thêm mới một NV vào một phòng ban ∗ Bổ nhiệm trưởng phòng cho một phòng ban Bối cảnh: NHANVIEN, PHONGBAN Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 6
- Bối cảnh (tt) Ví dụ (R2) Người quản lý trực tiếp phải là một nhân viên trong công ty Các phép cập nhật ∗ Cập nhật người quản lý trực tiếp của một nhân viên ∗ Thêm mới một nhân viên Bối cảnh: NHANVIEN Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 7
- Nội dung Nội dung của một RBTV được phát biểu bằng Ngôn ngữ tự nhiên Dễ hiểu nhưng thiếu tính chặt chẽ Ngôn ngữ hình thức Cô đọng, chặt chẽ nhưng đôi lúc khó hiểu Biểu diễn thông qua ∗ Đại số quan hệ ∗ Phép tính quan hệ ∗ Mã giả (pseudo code) Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 8
- Nội dung (tt) Ví dụ (R1) Ngôn ngữ tự nhiên Mức lương của một người nhân viên không được vượt quá trưởng phòng Ngôn ngữ hình thức ∀t ∈ NHANVIEN ( ∃u ∈ PHONGBAN ( ∃v ∈ NHANVIEN ( u.TRPHG = v.MANV ∧ u.MAPHG = t.PHG ∧ t.LUONG ≤ v.LUONG ))) Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 9
- Nội dung (tt) Ví dụ (R2) Ngôn ngữ tự nhiên Người quản lý trực tiếp phải là một nhân viên trong công ty Ngôn ngữ hình thức ∀t ∈ NHANVIEN ( t.MA_NQL ≠ null ∧ ∃s ∈ NHANVIEN (t.MA_NQL = s.MANV )) Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 10
- Bảng tầm ảnh hưởng Bảng tầm ảnh hưởng Xác định thao tác cập nhật nào cần phải kiểm tra RBTV khi được thực hiện trên quan hệ bối cảnh Có 2 loại Bảng tầm ảnh hưởng cho một RBTV Bảng tầm ảnh hưởng tổng hợp Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 11
- Bảng tầm ảnh hưởng một RBTV Tên_RB Thêm Xóa Sửa Quan hệ 1 + − + (Thuộc tính) Quan hệ 2 − + − … Quan hệ n − + − (+) Vi phạm RBTV ? (Kiểm tra khi cập nhật) (−) Không vi phạm RBTV Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 12
- Bảng tầm ảnh hưởng tổng hợp Ràng buộc 1 Ràng buộc 2 R. buộc m T X S T X S … … … T X S Quan hệ 1 + - + + - + + - + Quan hệ 2 - + - Quan hệ 3 - - + - + - … Quan hệ n - + - - - + Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 13
- Nội dung chi tiết Khái niệm Các đặc trưng của RBTV Phân loại RBTV Một quan hệ Nhiều quan hệ Miền giá trị Tham chiếu Liên bộ Liên bộ, liên quan hệ Liên thuộc tính Liên thuộc tính, liên QH Thuộc tính tổng hợp Chu trình Cài đặt Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 14
- RBTV - Miền giá trị RBTV qui định các giá trị cho một thuộc tính R A B C D α α 1 1 α β 5 7 β ∈ 9 ∈ β, γ} {α, {1..10} β β 12 3 β β 23 9 Miền giá trị Liên tục Rời rạc Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 15
- Ví dụ 3 Thời gian tham gia đề án của một nhân viên không quá 60 giờ Bối cảnh: PHANCONG Biểu diễn: ∀t ∈ PHANCONG ( t.THOIGIAN ≤ 60 ) Bảng tầm ảnh hưởng: R3 Thêm Xóa Sửa PHANCONG + − + (THOIGIAN) Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 16
- Ví dụ 4 Giới tính của nhân viên là ‘Nam’ hoặc ‘Nu’ Bối cảnh: NHANVIEN Biểu diễn: ∀t ∈ NHANVIEN ( t.PHAI ∈ {‘Nam’, ‘Nu’} ) Bảng tầm ảnh hưởng: hay DOM(PHAI) = {‘Nam’, ‘Nu’} R4 Thêm Xóa Sửa NHANVIEN + − + (PHAI) Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 17
- RBTV - Liên bộ Sự tồn tại của một hay nhiều bộ phụ thuộc vào sự tồn tại của một hay nhiều bộ khác trong cùng quan hệ R A B C D α α 1 1 α β 5 7 β β 12 3 β β 23 9 Trường hợp đặc biệt RB khóa chính RB duy nhất (unique) Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 18
- Ví dụ 5 Tên phòng là duy nhất Bối cảnh: PHONGBAN Biểu diễn: ∀t1, t2 ∈ PHONGBAN ( t1≠ t2 ∧ t1.TENPHG ≠ T2.TENPHG ) Bảng tầm ảnh hưởng: R5 Thêm Xóa Sửa PHONGBAN + − + (TENPHG) Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 19
- Ví dụ 6 Một nhân viên được tham gia tối đa 5 đề án Bối cảnh: PHANCONG Biểu diễn: ∀t ∈ PHANCONG ( card({ s ∈ PHANCONG | s.MA_NVIEN = t.MA_NVIEN}) ≤ 5 ) Bảng tầm ảnh hưởng: R6 Thêm Xóa Sửa PHANCONG + − + (MA_VIEN, SODA) Cơ sở dữ liệu - Khoa CNTT - CĐ KTCN ĐN 20
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Cơ sở dữ liệu đất đai
49 p | 634 | 79
-
Bài giảng Cơ sở dữ liệu - Nguyễn Quỳnh Chi
189 p | 267 | 51
-
Bài giảng Cơ sở dữ liệu: Chương 1 - Tổng quan về cơ sở dữ liệu
21 p | 181 | 31
-
Bài giảng Cơ sở dữ liệu: Bài 1 - ĐH CNTT
15 p | 607 | 30
-
Bài giảng Cơ sở dữ liệu - Bài 2: Mô hình cơ sở dữ liệu quan hệ
43 p | 221 | 18
-
Bài giảng Cơ sở dữ liệu: Chương 2 - ThS. Hoàng Mạnh Hà
68 p | 151 | 12
-
Bài giảng Cơ sở dữ liệu (Database): Chương 4 - TS. Đặng Thị Thu Hiền
82 p | 40 | 8
-
Bài giảng Cơ sở dữ liệu - Chương 4: Chuẩn hóa cơ sở dữ liệu
30 p | 134 | 8
-
Bài giảng Cơ sở dữ liệu nâng cao - Chương 2: Toàn vẹn và cơ sở dữ liệu active
50 p | 82 | 8
-
Bài giảng Cơ sở dữ liệu (Database): Chương 1 - TS. Đặng Thị Thu Hiền
53 p | 48 | 7
-
Bài giảng Cơ sở dữ liệu: Phần 1 – Nguyễn Hải Châu
54 p | 122 | 6
-
Bài giảng Cơ sở dữ liệu: Mở đầu - ThS. Lương Thị Ngọc Khánh
11 p | 169 | 6
-
Bài giảng Cơ sở dữ liệu nâng cao: Bài 1.1 - PGS.TS. Đỗ Phúc
25 p | 90 | 6
-
Bài giảng Cơ sở dữ liệu: Chương 1 - Th.S Thiều Quang Trung
40 p | 93 | 5
-
Bài giảng Cơ sở dữ liệu - Bài 1: Thiết kế Cơ sở dữ liệu với Management Studio
10 p | 62 | 5
-
Bài giảng Cơ sở dữ liệu nâng cao: Bài 2 - PGS.TS. Đỗ Phúc
55 p | 66 | 4
-
Bài giảng Cơ sở dữ liệu: Chương 1 - GV. Đỗ Thị Kim Thành
21 p | 103 | 4
-
Bài giảng Cơ sở dữ liệu: Chương 2 - Trần Thị Dung
39 p | 3 | 1
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn