Professional Documents
Culture Documents
Bai 3 de Cuong Bai Giang
Bai 3 de Cuong Bai Giang
Bai 3 de Cuong Bai Giang
1
• Các bảng trong CSDL quan hệ: quyết định cấu trúc thực sự của bảng của
CSDL quan hệ
• Hỗ trợ các cài đặt vật lý trong CSDL: Thiết kế các bảng dựa trên một hệ quản
trị CSDL cụ thể
2. Mô hình hóa dữ liệu
Mô hình hóa dữ liệu là quá trình xây dựng biểu đồ thực thể liên kết (Entity
Relationship Diagram-ERD) từ các yêu cầu về dữ liệu và quy tắc nghiệp vụ trong
giai đoạn 1. ERD bắt đầu bằng cách xác định bằng trực giác các đối tượng quan trọng
(hay các thực thể) dựa vào những dữ liệu mà hệ thống lưu giữ và sau đó xác định các
thuộc tính là những đặc điểm mô tả mỗi thực thể cùng với các mối quan hệ giữa các
thực thể.
Các bước xây dựng ERD
Bước 1. Xác định thực thể chính và định danh thực thể
• Xác định các thực thể chính: đối tượng thực (VD: Xe, sinh viên, máy bay…),
quan niệm (VD: hợp đồng bảo hiểm, chuyến bay) về dữ liệu cần thiết được lưu
trữ. Tên thực thể là danh từ
• Kiểm tra rằng mỗi thực thể thỏa mãn
- Có nhiều thể hiện
- Có một định danh
- Có ít nhất một thuộc tính mô tả
- Tham gia vào ít nhất một quan hệ
Bước 2. Xác định quan hệ giữa các thực thể
• Thiết lập sự tồn tại của các quan hệ (vẽ đường thẳng và đặt tên quan hệ)
• Tên của quan hệ là động từ.
• Xác định các ràng buộc về số lượng lớn nhất và nhỏ nhất các thể hiện tham gia
vào quan hệ.
- Quan hệ 1:n
• Mỗi Lớp có thể có 0, 1 hoặc nhiều Sinh viên
• Mỗi Sinh viên cần học trong một và chỉ một Lớp
2
- Quan hệ 1:1
• Mỗi Sinh viên cần phải có một và chỉ một hồ sơ
• Mỗi Hồ sơ phải thuộc về một Sinh viên
- Quan hệ n:n
• Mỗi Sinh viên có thể học 0, 1 hoặc nhiều Môn học
• Mỗi Môn học được học bởi 0, 1 hoặc nhiều Sinh viên
• Xem xét quan hệ n-n và đưa ra thực thể kết hợp (nếu có)
Bước 3. Gắn các thuộc tính mô tả cho các thực thể
• Gắn mỗi thuộc tính vào chỉ một thực thể thích hợp
• Nếu không chắc chắn là thuộc tính có thuộc thực thể hay không thì cần phải
nghiên cứu sâu hơn để quyết định
Bài tập: Vẽ ERD cho hệ thống quản lý đào tạo
Trường ĐHCNHN xây dựng hệ thống quản lý đào tạo theo tín chỉ, cho phép sinh
viên đăng ký môn học cho mỗi học kỳ. Hệ thống lưu trữ các thông tin sau:s
- Sinh viên khi nhập học được phân vào các lớp hành chính để quản lý. Thông
tin về sinh viên bao gồm mã sv, Họ tên sv, Ảnh, Ngày sinh, gi ới tính, n ơi sinh,
Số CMT, Ngày cấp, Địa chỉ liên hệ, ĐT. Thông tin về lớp Lớp: Mã lớp, Tên
lớp, khóa, Bậc đào tạo, ngành học, Giáo viên chủ nhiệm. Mỗi sinh viên thuộc 1
lớp, 1 lớp có nhiều sinh viên.
- Mỗi lớp thuộc một ngành đào tạo nào đó. Một ngành có thể m ở nhi ều l ớp.
Thông tin về ngành bao gồm Mã ngành, tên ngành, bậc đào tạo, S ố h ọc k ỳ đào
tạo
- Trước khi học kỳ mới bắt đầu phòng Đào tạo căn cứ vào tiến độ đào tạo, mở
các lớp học phần cho học kỳ đó. Thông tin của các lớp h ọc ph ần bao g ồm Mã
lớp, Tên lớp học phần, Phòng học, Ngày bắt đầu, TKB, Thời gian thi, Số lượng
3
SV tối đa, Số lượng sinh viên đăng ký, Giáo viên dạy. Mỗi l ớp h ọc ph ần được
mở cho 1 môn học. Mỗi môn học có thể mở 0,1 hoặc nhi ều lớp h ọc ph ần..
Thông tin về môn học bao gồm mã môn học, Tên môn học, Hình thức đánh
giá, Số TC, Bậc đào tạo.
- Mỗi lớp học phần được phân công cho 1 giáo viên dạy, Mỗi giáo viên d ạy
nhiều lớp học phần. Thông tin về giáo viên bao gồm: Mã giáo viên, H ọ tên,
Ngày sinh, Giới tính, Địa chỉ, Điện thoại
- Trước khi học kỳ mới bắt đầu 1 tháng, mỗi sinh viên có th ể đăng ký h ọc t ừ 6
đến 8 lớp học phần mở cho học kỳ đó(không quá 20 tín chỉ). Mỗi lớp học phần
thông thường cho phép tối đa 80 sinh viên đăng ký học. Khi tham gia học ở
các lớp học phần sinh viên sẽ có điểm chuyên cần, điểm thường xuyên, điểm
thi giữa kỳ và điểm thi cuối kỳ
4
hoặc ngược lại
Cách 2: Gộp 2 bảng làm 1, xác định lại thuộc tính khóa
- Quan hệ 1-N: Lấy thuộc tính khóa chính của bảng cha sang làm thuộc tính
khóa ngoại của bảng con.
- Quan hệ N-N: Chuyển mối liên kết thành lược đồ quan hệ mới, thuộc tính
là thuộc tính của mối liên kết, khóa chính là tổ hợp khóa của hai bảng liên
quan
Bài tập: Chuyển ERD của hệ thống quản lý đào tạo trường ĐHCNHN sang mô hình
quan hệ
NGANH( MaNganh, TenNganh,BacDT, SoHocKy)
LOP(Malop,TenLop, Khoa,BacDT,GVCN,MaNganh)
SINHVIEN(MaSV, HoTenSV, Picture, NgaySinh, NoiSinh, SoCMT,NgayCap,DiaChi,DT,
MaLop)
KETQUA(MaSV, MaLopHP, DiemChuyenCan, DiemTX, DiemGiuaKy, DiemCK)
LOPHOCPHAN(MalopHP, TenLopHP, PhongHoc, NgayBD, TKB, NgayThi, MaGV,
MaMH)
GIAOVIEN(MaGV, HoTenGV, NgaySInh, GioiTinh, DiaCHi, DienThoai)
MONHOC(MaMH, TenMH, HinhThucDG, SoTC, BacDT)
Hình 1: Giao diện Chức năng nhập điểm của Giáo viên
TenMH
MaLopHP MaMH
6 SoTC
PK={ MalopHP}
MaLopHP Ho
MaSV Ten
MaLopDN
PK={ MalopHP, MaSV}
DiemTX1
GIAOVIEN(MaGV, HoTenGV)
MONHOC(MaMH, TenMH, HinhThucThi, TrinhDO, SoTC)
LOPDOCLAP(MaLopDocLap, MaGV,MaMH,TrangThai,MaLopUuTien)
SINHVIEN(MaSV, HoDem, Ten, MaLopDN)
KETQUA(MaLopDocLap, MaSV, TX1, TX2, TX3, TX4, TX5, TX6, TX7, TX8, TX9,
7
TX10, DiemGK, SoTN, DiemCC, ThiLan1, ThiLan2,GhiChu)
8
9