Thiết kế cơ sở dữ liệu quan hệ - Phần 3: Ràng buộc toàn vẹn

Chia sẻ: daicongtugalang

Cơ sở dữ liệu hướng đối tượng: dữ liệu cũng được lưu trữ trong các bản dữ liệu nhưng các bảng có bổ sung thêm các tính năng hướng đối tượng như lưu trữ thêm các hành vi, nhằm thể hiện hành vi của đối tượng. Mỗi bảng xem như một lớp dữ liệu, một dòng dữ liệu trong bảng là một đối tượng. Các hệ quản trị có hỗ trợ cơ sở dữ liệu quan hệ như: MS SQL server, Oracle, Postgres....

Bạn đang xem 7 trang mẫu tài liệu này, vui lòng download file gốc để xem toàn bộ.

Nội dung Text: Thiết kế cơ sở dữ liệu quan hệ - Phần 3: Ràng buộc toàn vẹn

THIẾT KẾ CƠ SỞ DỮ LIỆU
QUAN HỆ (Relational Database Designing)




Phần III – RÀNG BUỘC TOÀN VẸN
(entegrity constraint)
Khái niệm về Ràng buộc toàn vẹn
Ràng buộc toàn vẹn – Khái
niệm
• Là những điều kiện bất biến mà tất cả các bộ
trong các quan hệ có liên quan(đến ràng buộc)
phải thỏa tại mọi thời điểm.
 Ràng buộc toàn vẹn rất quan trọng vì nó qui
định ràng buộc trên dữ liệu nhập/xuất trong
CSDL.
• Ràng buộc toàn vẹn thường được mô tả bằng
các Tân từ (xem phần I), do nhà thiết kế CSDL
tìm và phát hiện ra trong quá trình phân tích
CSDL.
Các yếu tố của Ràng buộc toàn vẹn (p.1)
Các yếu tố của Ràng buộc toàn
v ẹn
1. Điều kiện : là điều kiện ràng buộc (nội dung
chính của Ràng buộc toàn vẹn), thường được mô
tả bằng ngôn ngữ đặc tả hình thức.
Ví dụ :
Ràng buộc R1 :
∀ t1, t2 ∈ SINHVIEN, t1.MaSV ≠ t2.MaSV
Ràng buộc R2 :
∀ t1∈ SINHVIEN,
∃ t2 ∈ DANGKY_HOCPHAN, t2.MAHP = ‘CSDL’ ∧
t2.MaSV = t1.MaSV
Ý nghĩa ràng buộc R2: mọi sinh viên đều phải đăng ký học
Các yếu tố của Ràng buộc toàn vẹn (p.2)
Các yếu tố của Ràng buộc toàn vẹn
(t.t)
1. Bối cảnh : là các (lược đồ) quan hệ có liên
quan đến ràng buộc toàn vẹn.
Như trong ví dụ của yếu tố Điều kiện, ràng
buộc R1 có bối cảnh là quan hệ SINHVIEN,
ràng buộc R2 có bối cảnh là quan hệ
SINHVIEN và DANGKY_HOCPHAN
Các yếu tố của Ràng buộc toàn vẹn (p.3)
Các yếu tố của Ràng buộc toàn vẹn
(t.t)
1. Tầm ảnh hưởng : các thao tác cập nhật dữ
liệu (thêm / xóa / sửa) – có tác động lên các
quan hệ trong bối cảnh của ràng buộc toàn
vẹn – cần phải được kiểm tra lại điều kiện
ràng buộc.
Ta thường xác định yếu tố Tầm ảnh hưởng
bằng cách xây dựng Bảng Tầm ảnh hưởng
của ràng buộc toàn vẹn.
Các yếu tố của Ràng buộc toàn vẹn (p.4)


Bảng tầm ảnh hưởng
Thêm Xóa Sử a
+ hoặc - + hoặc - + hoặc -
+ hoặc - + hoặc - + hoặc -
… + hoặc - + hoặc - + hoặc -
+ hoặc - + hoặc - + hoặc -
• , , … , là các
quan hệ trong bối cảnh của RBTV
• Tại ô dòng i, cột j là dấu +  thao tác j xảy ra tại
cần được kiểm tra lại điều kiện
RBTV trên bộ liên quan đến thao tác; là dấu - :
Các yếu tố của Ràng buộc toàn vẹn (p.5)


Bảng tầm ảnh hưởng – Ví dụ
Trong 2 ràng buộc toàn vẹn ở slide 3
R1 Thêm Xóa Sửa
SINHVIEN + - +(MASV)
Giải thích :
Thao tác Thêm : Thêm 1 bộ mới vào quan hệ SINHVIEN (tức
thêm SV mới), thì phải kiểm tra MaSV có đã bị trùng trong bảng
chưa
Thao tác Xóa : Xóa 1 bộ (xóa 1 SV) trong quan hệ SINHVIEN thì
không cần phải kiểm tra ràng buộc về MaSV
Thao tác Sửa : Khi sửa thông tin của 1 bộ đang tồn tại trong
quan hệ SINHVIEN, thì yêu cầu kiểm tra ràng buộc chỉ bắt
buộc khi thao tác Sửa xảy ra trên thuộc tính MaSV (sửa MaSV)
Các yếu tố của Ràng buộc toàn vẹn (p.6)


Bảng tầm ảnh hưởng – Ví dụ
R2 Thêm Xóa Sử a
SINHVIEN + - +(MASV)
DANGKY_HOCPHAN - + +
Phân loại Ràng buộc toàn vẹn (p.1)


Phân loại Ràng buộc toàn vẹn
• Ràng buộc có bối cảnh là 1 quan hệ :
– RBTV miền giá trị.
– RBTV liên thuộc tính.
– RBTV liên bộ.
• Ràng buộc có bối cảnh là nhiều quan hệ :
– RBTV phụ thuộc tồn tại.
– RBTV liên bộ - liên quan hệ.
– RBTV liên thuộc tính – liên quan hệ.
Phân loại Ràng buộc toàn vẹn (p.2)


RBTV liên bộ
• Là sự ràng buộc giữa các bộ trong cùng 1
quan hệ.
• Một loại RBTV liên bộ phổ biến là ràng
buộc toàn vẹn về khóa : trong 1 quan hệ, 2
bộ bất kỳ không được trùng khóa.
• Bảng tầm ảnh hưởng chung :
R Thêm Xóa Sửa
+ - +
Phân loại Ràng buộc toàn vẹn (p.3)


RBTV trên miền giá trị
• Là điều kiện áp đặt trên miền giá trị của
các thuộc tính.
• Ví dụ : thuộc tính DIEMTB của quan hệ
SINHVIEN phải trong khoảng [0,10]
• Bảng tầm ảnh hưởng chung :

R Thêm Xóa Sửa
+ - +
Phân loại Ràng buộc toàn vẹn (p.4)


RBTV liên thuộc tính
• Là điều kiện ràng buộc giữa các thuộc tính trong 1
(lược đồ) quan hệ.
• Ví dụ : trong quan hệ SINHVIEN, thuộc tính
NGAYSINH phải luôn luôn nhận giá trị nhỏ hơn
thuộc tính NGAYVAODOAN :
∀t ∈ SINHVIEN,
t.NGAYSINH < t.NGAYVAODOAN
• Bảng tầm ảnh hưởng chung :
R Thêm Xóa Sửa
+ - +
Phân loại Ràng buộc toàn vẹn (p.5)


RBTV phụ thuộc tồn tại
• Phổ biến nhất là ràng buộc khóa ngoại :
∀t ∈ DANGKY_HOCPHAN,
∃ t1 ∈ SINHVIEN : t.MASV = t1.MASV ∧
∃ t2 ∈ HOCPHAN : t.MAHP = t2.MAHP
• Bảng tầm ảnh hưởng chung : R1 chứa khóa ngoại, R2
chứa khóa chính
Quan hệ Thêm Xóa Sửa
+ - +
- + +
Phân loại Ràng buộc toàn vẹn (p.6)
RBTV liên thuộc tính - liên quan
hệ
• Là điều kiện ràng buộc giữa các thuộc tính trong
nhiều (lược đồ) quan hệ.
• Ví dụ : Cho lược đồ CSDL Quản Lý Bán Hàng với
quan hệ DatHang, HoaDonXuat, ta có RBTV :
∀t1 ∈ DatHang, t2 ∈ HoaDonXuat :
t1.MaHD = t2.MaHD  t1.NgayDatHang
Đề thi vào lớp 10 môn Toán |  Đáp án đề thi tốt nghiệp |  Đề thi Đại học |  Đề thi thử đại học môn Hóa |  Mẫu đơn xin việc |  Bài tiểu luận mẫu |  Ôn thi cao học 2014 |  Nghiên cứu khoa học |  Lập kế hoạch kinh doanh |  Bảng cân đối kế toán |  Đề thi chứng chỉ Tin học |  Tư tưởng Hồ Chí Minh |  Đề thi chứng chỉ Tiếng anh
Theo dõi chúng tôi
Đồng bộ tài khoản