
Kiểm tra dạng chuẩn của lược đồ quan hệ
Bài 1
Cho biết các dạng chuẩn của lược đồ quan hệ sau
a) R=ABCDEG; F={A→BC, C→DE, E→G}
b) R=ABCDEG; F={C→AB, D→E, B→G}
c) R=ABCDEGH; F={A→BC, D→E, H→G}
d) R=ABCDEG; F={AB→C, C→B, ABD→E, G→A}
Bài 2
Kiểm tra các dạng chuẩn
a) R=ABCD; F={CA→D, A→B}
b) R=SDIM; F={SI→D, SD→M}
e) R=SNDTX; F={S→N, S→D, S→T, S→X}
d) R=ABCDEGHI; F={AC→B, BI→ACD, ABC→D, H→I, ACE→BCG,
CG→AE}
Chuẩn hóa lược đồ quan hệ
Bài 1
Chuẩn hóa lược đồ quan hệ sau về dạng 3NF vừa bảo toàn tập phụ thuộc
hàm vừa bảo toàn thông tin.
a) R=ABC; F={A→B, A→C, B→A, C→A, B→C}
b) R=ABCD; F={A→C,C→A, CB→D, AD→B, CD→B, AB→D}
c) R=ABCDGH; F={GH→AD, AG→B, CD→GH, C→A, BH→C}
Bài 2
Chuẩn hóa lược đồ quan hệ sau về dạng BNF
a) R=SDIM; F={SI→D, SD→M}
b) R=ABCD; F={A→B, B→C, D→B}

Kiểm tra bảo toàn tập phụ thuộc hàm và bảo toàn thông tin
Bài 1
Cho lược đồ quan hệ R=ABCDE
Tập phụ thuộc hàm F={A → C, B → C, C → D, DE → C, CE → A}
Phép tách lược đồ thành các lược đồ con: R1=AD, R2=AB, R3=BE,
R4=CDE, R5=AE.
Kiểm tra phép tách có mất mát thông tin hay không ?
Bài 2
Cho lược đồ quan hệ R=ABCD
Tập phụ thuộc hàm F={A→B, B→C, A→D, D→C}
Phép tách lược đồ thành các lược đồ con : R1=AB, R2=AC, R3=BD
Kiểm tra phép tách có bảo toàn thông tin hay không?
Kiểm tra phép tách có bảo toàn tập phụ thuộc hàm với F ?
Bài 3
Cho lược đồ quan hệ R=ABCDEH
Tập phụ thuộc hàm F={C →ADEH, A →B, DEH →A}
Phép tách lược đồ thành các lược đồ con: R1=AB, R2 =CDEH, R3=DEHA
Kiểm tra phép tách có mất mát thông tin hay không ?
Xây dựng mô hình quan hệ cho cơ sở dữ liệu
Bài 1
Có các mô tả sau về CSDL “THƯ VIỆN”:
a) Thư viện được chia ra thành các nhánh. Thông tin về mỗi nhánh gồm có
Mã nhánh, Tên nhánh và Địa chỉ.
b) Mỗi cuốn sách trong thư viện có các thông tin về Mã sách, Tên sách Nhà
xuất bản và Tác giả…

c) Một tác giả có thể viết nhiều cuốn sách. Một cuốn sách có thể có nhiều
tác giả viết.
d) Một nhà xuất bản xuất bản nhiều cuốn sách. Một cuốn sách do một nhà
xuất bản xuất bản. Thông tin về Nhà xuất bản gồm có Tên NXB, Địa chỉ
NXB và Số điện thoại NXB.
e) Một cuốn sách có thể có nhiều bản sao được lưu trữ tại các nhánh. Thông
tin về bản sao sách gồm Mã sách, số các bản sao.
f) Thư viện có những người mượn sách. Thông tin về những người mượn
sách gồm có Số thẻ, Họ tên, Địa chỉ và Số điện thoại.
g) Sách được cho các người mượn mượn tại các nhánh. Thông tin về một
lần mượn gồm có Ngày mượn và ngày trả.
Hãy xây dựng lược đồ quan hệ cho CSDL “THƯ VIỆN ” từ các mô tả nói
trên.
Bài tập Access
Với các bảng cơ sở đã tạo trong bài tập SQL, dùng giao diện Design View
để tạo thêm các ràng buộc đối với các trường dữ liệu trên từng bảng như sau.
Bảng CHI_NHANH
(
MA_NHANH, TEN_NHANH, DIA_CHI)
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_NHANH Char 10 Khóa chính. Bắt đầu bằng ký tự N
và sau đó là chữ số
TEN_NHANH Varchar 50
DIA_CHI Varchar 80
Bảng SACH

(MA_SACH, TEN_SACH, MA_NHA_XB)
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_SACH Char 10 Khóa chính. Mã
chỉ gồm ký tự in
hoa và chữ số.
TEN_SACH Varchar 50
MA_NHA_XB Char 10 Khóa ngoài. Giá
trị phải tồn tại
trong bảng
NHA_XUAT_BAN
Bảng TAC_GIA
(MA_TG, TEN_TG, NAM_SINH, NAM_MAT)
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_TG Char 10 Khóa chính. Bắt đầu
bằng hai chữ cái TG
sau đó là chữ số
TEN_TG Varchar 50
NAM_SINH Date Định dạng ShortDate,
Nhất thiết phai nhập
giá trị
NAM_MAT Date
Bảng SANG_TAC
(MA_SACH, MA_TG)
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_SACH Char 10 Khóa chính. Giá
trị phải tồn tại
trong bảng SACH

MA_TG Char 10 Khóa chính. Giá
trị phải tồn tại
trong bảng
TAC_GIA
Bảng NHA_XUAT_BAN
(MA_NHA_XB, TEN_NHA_XB, DIA_CHI, DIEN_THOAI)
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_NHA_XB Char 10 Khóa chính. Bắt
đầu bằng hai chữ
cái in hoa XB
TEN_NHA_XB Varchar 50
DIA_CHI Varchar 80
DIEN_THOAI Char 10 Chỉ gồm chữ số và
dấu cách
Bảng BAN_SAO
(MA_SACH, MA_NHANH, SO_BAN_SAO)
Tên cột Kiểu dữ liệu Độ dài xâu Ràng buộc khác
MA_SACH Char 10 Khóa chính. Giá
trị phải tồn tại
trong bảng SACH
MA_NHANH Char 10 Khóa chính. Giá
trị phải tồn tại
trong bảng
CHI_NHANH
SO_BAN_SAO Number Không quá 100
Bảng DOC_GIA

