1. Đánh giá dạng chuẩn:
Nganh(MaNganh, TenNganh)
Có tập phụ thuộc hàm là : MaNganh J TenNganh
Thuộc tính không khóa TenNganh phụ thuộc duy nhất vào khóa MaNganh nên MaNganh là một siêu khóa. Vậy Nganh(MaNganh, TenNganh) thuộc dạng chuẩn BC
Lop(MaLop, TenLop, MaNganh)
Có tập phụ thuộc hàm: MaLop JTenLop
Thuộc tính không khóa TenLop phụ thuộc duy nhất vào MaLop nên MaLop là một siêu khóa. Vậy Lop(MaLop, TenLop, MaNganh) thuộc dạng chuẩn BC.
SinhVien(MaSV, HoSV, TenSV, MaLop,NgaySinh,GioiTinh,
TonGiao, DiaChi, KhuVuc, HinhAnh, TrangThai_ID, QuocTich, ThanhPhanXT )
Có tập phụ thuộc hàm: MaSVJHoSV, TenSV, NgaySinh, GioiTinh, MaLop, GioiTinh, TonGiao,DiaChi, KhuVuc, HinhAnh, TrangThai_ID, QuocTich, ThanhPhanXT.
GioiTinh, MaLop, GioiTinh, TonGiao, DiaChi, KhuVuc, HinhAnh, TrangThai_ID, QuocTich,ThanhPhanXT. Vậy SinhVien(MaSV, HoSV, TenSV, NgaySinh, MaLop, GioiTinh, TonGiao, DiaChi, KhuVuc, HinhAnh, TrangThai_ID, QuocTich, ThanhPhanXT) thuộc dạng chuẩn BC.
NamHoc(NamHoc_ID, NamHoc)
Có tập phụ thuộc hàm: NamHoc_ID J NamHoc
Thuộc tính không khóa NamHoc phụ thuộc duy nhất vào NamHoc_ID nên NamHoc_ID là một siêu khóa. Vậy NamHoc(NamHoc_ID, NamHoc) thuộc dạng chuẩn BC.
HocKy(HocKy_ID, HocKy, NamHoc_ID)
Có tập phụ thuộc hàm: HocKy_ID J HocKy
Thuộc tính không khóa HocKy phụ thuộc duy nhất vào HocKy_ID nên HocKy_ID là một siêu khóa. Vậy NamHoc(HocKy_ID, HocKy) thuộc dạng chuẩn BC.
TrangThai(TrangThai_ID, TenTrangThai)
Có tập phụ thuộc hàm: TrangThai_ID J TenTrangThai
Thuộc tính không khóa TenTrangThai phụ thuộc duy nhất vào TrangThai_ID nên TrangThai_ID là một siêu khóa. Vậy TrangThai(TrangThai_ID, TenTrangThai) thuộc dạng chuẩn BC.
ChuyenTrangThai(CTT_ID, MaSV, TrangThai_ID, HocKy_ID): đạt
dạng chuẩn BC
LoaiChinhSach(LoaiCS_ID, TenLoaiCS): đạt dạng chuẩn BC
SinhVien_ChinhSach(SV_CS_ID, MaSV, ChinhSach_ID): đạt dang chuẩn BC
LoaiHocbong(LoaiHB_ID, TenLoaiHB): đạt dạng chuẩn BC.
HocBong(HocBong_ID, TenHB, LoaiHB_ID): đạt dạng chuẩn BC.
SinhVien_HocBong(SV_HB_ID, MaSV, HocBong_ID, HocKy_ID):
đạt dạng chuẩn BC
KhenThuong(KT_ID, TenKhenThuong): đạt dạng chuẩn BC
SinhVien_KhenThuong(SV_KT_ID, MaS, KT_ID, HocKy_ID): đạt dạng chuẩn BC.
Lop_KhenThuong(Lop_KT_ID, MaLop, KT_ID, HocKy_ID): đạt dạng chuẩn BC
LoaiViPham(LoaiVP_ID, TenLoaiVP): đạt dạng chuẩn BC
ViPham(VP_ID, TenVP, LoaiP_ID): đạt dạng chuẩn BC
HinhThucXL(HTXL_ID, TenHTXL): đạt dạng chuẩn BC
SinhVien_ViPham(SV_VP_ID, MaSV, VP_ID, HTXL_ID,
HocKy_ID): đạt dạng chuẩn BC
KetQuaHT(KQHT_ID, MaSV, HocKy_ID, KetQua, XepLoaiHT,
XepLoaiRL): đạt dạng chuẩn BC
KetQuaTN(KQTN_ID, MaSV, KetQuaTN, XepLoaiTN): đạt dạng chuẩn BC
VonTinDung(VTD_ID, MaSV, HocKy_ID, SoTien ) :đạt dạng chuẩn
BC
ViecLamThem(VLT_ID, MaSV, HocKy_ID, ChuyenMon): đạt dạng chuẩn BC
2. Ràng buộc toàn vẹn:
Ràng buộc toàn vẹn liên bộ
Các thực thể/ Mối kết hợp: SinhVien, Lop, Nganh, NamHoc, HocKy,….
Mô tả: khóa chính trong một bảng phải khác nhau. Thuật toán: ∀ t1, t2 ∈ SinhVien
t1.MaSV ≠ t2.MaSV Tầm ảnh hưởng:
Thêm Xóa Sửa SinhVien + - +[MaSV]
Ràng buộc toàn vẹn về miền giá trị của thuộc tính Các thực thể/ Mối kết hợp: KetQuaHT, KetQuaTN
Mô tả: Miền giá trị của xếp loại học tập và xếp loại tốt nghiệp có các loại sau: xuất sắc, giỏi, khá, trung bình khá, trung bình, yếu, kém. Thuật toán: ∀ t∈KetQuaHT, t.XepLoaiHT [xuất sắc, giỏi, khá, trung bình khá, trung bình, yếu, kém]
⊆
Tầm ảnh hưởng:
Thêm Xóa Sửa
KetQuaHT + - +[XepLoaiHT]
Ràng buộc toàn vẹn về phụ thuộc tồn tại
Mô tả: Khóa ngoại trong các bảng quan hệ phải tồn tại trong mã khóa chính của các bảng liên quan.
Thuật toán: ∀ t∈SinhVien, ∃ l∈Lop Sao cho: t.MaLop= l.MaLop Tầm ảnh hưởng:
Thêm Xóa Sửa
SinhVien + - +[MaLop]
Lop - + +[MaLop]