Thiết lập cơ sở dữ liệu về hệ thống Quản lý sinh viên sử dụng cơ sở dữ liệu Microsoft SQL Server Management Studio 19. Báo cáo môn Cơ sở dữ liệu nâng cao về đề tài Hệ thống quản lý sinh viên là một tài liệu tổng hợp và phân tích chi tiết về quá trình thiết kế, triển khai và quản lý cơ sở dữ liệu cho hệ thống quản lý sinh viên.
Trang 1TRƯỜNG ĐẠI HỌC NGOẠI NGỮ - TIN HỌC THÀNH PHỐ HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
BÀI BÁO CÁO KẾT THÚC HỌC PHẦN
CƠ SỞ DỮ LIỆU NÂNG CAO PHÂN TÍCH, THIẾT KẾ VÀ
CÀI ĐẶT CSDL CHO PHẦN MỀM QUẢN LÝ
SINH VIÊNGiảng viên hướng dẫn : Trần Anh Duy
Sinh viên thực hiện :
1 Nguyễn Minh Khang 21DH113742
3 Nguyễn Phước Nguyên 21DH113308
Thành phố Hồ Chí Minh, tháng 08/20
Trang 2DANH MỤC BẢNG
Bảng 1 : Phỏng vấn 3
Bảng 2 : Thông tin lưu trữ của sinh viên 4
Bảng 3 :Thông tin lưu trữ của thông tin sinh viên 4
Bảng 4 : Thông tin lưu trữ của giáo viên 6
Bảng 5 : Thông tin lưu trữ của lớp học 7
Bảng 6 : Thông tin lưu trữ của phòng học 7
Bảng 7 : Thông tin lưu trữ của môn học 7
Bảng 8 : Thông tin lưu trữ của lớp học phần 8
Bảng 9 : Thông tin lưu trữ của khoa 9
Bảng 10 : Thông tin lưu trữ của tài chính sinh viên 9
Bảng 11 : Thông tin lưu trữ của hóa đơn 10
Bảng 12 : Thông tin lưu trữ của lịch học 10
Bảng 13 : Thông tin lưu trữ của kết quả học tập 11
Bảng 14 : Thông tin lưu trữ của học bổng 12
Bảng 15 : Thông tin lưu trữ của nhận học bổng 12
Bảng 16 : noSQL 16
Bảng 17 : newSQL 16
Bảng 18 : Thực thể SinhVien 19
Bảng 19 : Thực thể PhongHoc 20
Bảng 20 : Thực thể ThongTinSV 20
Bảng 21 : Thực thể MonHoc 21
Bảng 22 : Thực thể GiangVien 21
Bảng 23 : Thực thể LopHocPhan 23
Bảng 24 : Thực thể Khoa 24
Bảng 25 : Thực thể LopHoc 24
Bảng 26 : Thực thể TaiChinhSV 25
Bảng 27 : Thực thể HoaDon 25
Bảng 28 : Thực thể LichHoc 26
Bảng 29 : Thực thể HocBong 27
Bảng 30 : Thực thể NhanHocBong 27
Bảng 31 : Thực thể KetQuaHocTap 28
DANH MỤC HÌNH Hình 1 : ERD 2
Hình 2 : lược đồ quan hệ dạng bảng 13
Trang 3MỤC LỤC
DANH MỤC BẢNG 2
DANH MỤC HÌNH 3
CHƯƠNG 1 : GIỚI THIỆU ĐỀ TÀI 3
1.1 Giới thiệu 3
1.1.1 Mở đầu 3
1.1.2 Lý do 3
1.2 Khảo sát thực tế 3
1.2.1 Thông tin chung 3
1.2.2 Cơ cấu tổ chức 4
1.3 Yêu cầu lưu trữ 4
CHƯƠNG 2 : CƠ SỞ LÝ THUYẾT 13
2.1 Mô hình thực thể kết hợp 13
2.2 Phụ thuộc hàm 13
2.3 Các dạng chuẩn 13
2.4 Bảo toàn thông tin 14
2.5 Lập trình cơ sở dữ liệu 14
2.6 Ràng buộc toàn vẹn 15
2.7 noSQL và newSQL 16
2.7.1 noSQL 16
2.7.2 newSQL 16
CHƯƠNG 3 : PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU 17
3.1 Mô hình thực thể kết hợp 17
3.2 Mô tả các thực thể 19
3.3 Lược đồ cơ sở dữ liệu quan hệ 28
3.4 Phân tích chuẩn của lược đồ quan hệ 29
3.4.1 Lược đồ chuẩn 1 Tất cả lược đồ đã đạt chuẩn 1 vì không có lượt đồ nào tồn tại thuộc tính đa trị 29 3.4.2 Lược đồ chuẩn 2 29
3.4.3 Lược đô đã đạt chuẩn 3 31
3.5 Lược đồ cơ sở dữ liệu quan hệ sau khi chuẩn hóa thành 3NF 32
CHƯƠNG 4 : TRIỂN KHAI CƠ SỞ DỮ LIỆU TRÊN MS SQL SERVER 35
4.1 Tạo cơ sở dữ liệu 35
4.2 Nhập liệu mẫu 38
2
Trang 44.3 Cài đặt các ràng buộc toàn vẹn 40
4.4 Cài các store procedure 46
CHƯƠNG 5 : KẾT LUẬN 51
5.1 Kết quả đạt được: 51
5.2 Kết quả chưa đạt được : 51
5.3 Hướng phát triển mở rộng ứng dụng trong tương lai : 51
Trang 5CHƯƠNG 1 : GIỚI THIỆU ĐỀ TÀI
1.1 Giới thiệu
1.1.1 Mở đầu
- Giữa thời đại mà công nghệ thông tin đang phát triển như vũ bão, mọidoanh nghiệp, ngành nghề đều hướng đến ứng dụng công nghệ vào hệthống quản lý của mình thay thế cho việc nhập liệu và quản lý dữ liệuthủ công, vốn dễ nhầm lẫn, sai sót Ngành giáo dục cũng không ngoại
lệ khi hàng năm phải đón nhận thêm hàng trăm hoặc có khi hàng ngànsinh viên mới vào học, ngoài ra còn phải xử lý các thông tin về điểm,lớp học phần, Vì vậy, việc cần có một hệ thống quản lý dữ liệu tiêntiến theo kịp thời đại và xử lý tốt các yêu cầu của nhà trường là rất cầnthiết
1.1.2 Lý do
- Nắm bắt được nhu cầu áp dụng công nghệ vào quản lý học sinh củangành giáo dục nói chung và các trường Đại học nói riêng, nhóm em
đã quyết định xây dựng một hệ thống cơ sở dữ liệu dành cho việc quản
lý sinh viên Đề tài tập trung vào quản lý các thông tin sinh viên nhưđiểm, khoa, lớp học phần,
1.2 Khảo sát thực tế
1.2.1 Thông tin chung
Bảng 1 : Phỏng vấn
Người được phỏng vấn : Đỗ Mạnh Hùng Ngày 3/8/2023
Câu 1 : Trường học có được chia ra Trường được chia thành nhiều phòng ban
Trang 6nhiều phòng ban không với các chức năng như Giáo viên, Giáo
quản lý
Dữ liệu của sinh viên thường sẽ đượchiệu trưởng và giáo vụ quản lý
Câu 4: Làm thế nào để quản lý email,
đồng bộ email giáo viên một cách dễ
dàng hơn?
Cung cấp cho mỗi giáo viên một emailriêng của trường dựa trên mã số Giúpviệc quản lý, phân biệt và thông báo dễdàng hơn
Câu 5: Làm sao để sinh viên quản lý các
khoản đóng tiền của mình?
Khi đóng tiền sẽ sinh ra hóa đơn với đầy
đủ thông tin, giúp sinh viên dễ quản lýcác khoản tiền đã đóng và cũng như làmbằng chứng khi có lỗi không mong muốnxảy ra
Câu 6: Có chức năng nào để hỗ trợ sinh
viên không?
Tạo ra mục học bổng để hỗ trợ sinh viêncũng như thúc đẩy động lực học vớinhiều mức học bổng
Câu 7: Sinh viên có chuyên ngành, vậỵ
một lớp chuyên ngành rất đông?
Các sinh viên sẽ được chia vào các lớp
có mã lớp phân biệt dựa trên chuyênngành của mình Nhằm chia nhỏ để dễquản lý hơn
Câu 8: Làm sao để biết sinh viên còn học
hay là đã bảo lưu.?
Mỗi sinh viên sẽ có tình trạng còn họchay bảo lưu hay nghỉ học Để dễ dàngtruy xuất sau này
Câu 9: Sinh viên có lịch học như thế
nào?
Mỗi sinh viên dựa vào lớp học phần màmình đã đăng ký sẽ có lịch học có thể
Trang 7khác nhau.
Câu 10: Khi có một người quản lý lỡ tay
xóa thông tin?
Hệ thống sẽ tự động lưu lại thao tác,ngày giờ và người thực hiện thao tácnhằm quản lý có trường hợp khôngmong muốn
1.2.2 Cơ cấu tổ chức
1.3 Yêu cầu lưu trữ
Bảng 2 : Thông tin lưu trữ của sinh viên
1 Mã sinh viên Chuỗi Dữ liệu mô tả mã sinh viên Không trùng nhau
2 Họ tên Text Dữ liệu mô tả họ tên sinh
4 Tình trạng Text Dữ liệu mô tả tình trạng
học của sinh viên
5 Mã lớp chuỗi Dữ liệu mô tả mã lớp mà
sinh viên học
3
Hiệu trường
Phòng khoa
Giảng viên
Sinh viên
Phòng đào tạo
Trang 8Bảng 3 :Thông tin lưu trữ của thông tin sinh viên
1 Mã thông tin sinh
viên
Chuỗi Dữ liệu mô tả mã số
sinh viên
khóa chính
2 Ngày sinh Ngày Dữ liệu mô tả ngày
sinh sinh viên
3 Giới tính nam nữ Dữ liệu mô tả giới tính
sinh viên
cước công dân sinhviên
Số CCCD phảikhác nhau
thoại sinh viên
Số điện thoại phải
đủ 10 số và khácnhau
sinh viên
Trang 9Bảng 4 : Thông tin lưu trữ của giáo viên.
5
1 Mã giảng viên chuỗi Dữ liệu mô tả mã giảng
7 Email trường chuỗi Dữ liệu mô tả email trường
của giảng viên
phải đúng định dạng và không được trùng nhau
8 SĐT chuỗi Dữ liệu mô tả số điện thoại
giáo viên
Số điện thoại phải đủ 10 số
và khác nhau
9 CCCD chuỗi Dữ liệu mô tả số căn cước
công dân
Không được trùng
Trang 10Bảng 5 : Thông tin lưu trữ của lớp học.
Bảng 6 : Thông tin lưu trữ của phòng học.
1 Mã lớp học chuỗi Dữ liệu mô tả mã phòng
học
Khóa chính
2 Số lượng Số Dữ liệu mô tả số lượng lớp
học
1 Mã phòng học chuỗi Dữ liệu mô tả mã phòng
học
Khóa chính
2 Loại phòng text Dữ liệu mô tả loại phòng
học
Trang 11Bảng 7 : Thông tin lưu trữ của môn học.
Bảng 8 : Thông tin lưu trữ của lớp học phần.
5 Học kỳ số Dữ liệu mô tả học kỳ lớn hơn 0
và nhỏ hơn 4
6 Tiết học chuỗi Dữ liệu mô tả số tiết phải lớn
3 Số tín chỉ số Dữ liệu mô tả số tín chỉ phải lớn hơn 0
4 Mã khoa chuỗi Dữ liệu mô tả mã khoa
của môn học
Khóa ngoại
Trang 12học hơn 0
Viên
chuỗi Dữ liệu mô tả mã
giáo viên dạy theo môn học
Bảng 9 : Thông tin lưu trữ của khoa.
1 Mã khoa chuỗi Dữ liệu mô tả mã khoa Khóa chính
2 Tên khoa Text Dữ liệu mô tả tên khoa
Trang 13Bảng 10 : Thông tin lưu trữ của tài chính sinh viên.
đóng
số tiền cần phải đóng
xác định số học kỳ
phải lớn 0 và
bé hơn 4
ngày đóng học phí
phần trăm được giảm
Bảng 11 : Thông tin lưu trữ của hóa đơn.
1 Mã Hóa Đơn chuỗi Dữ liệu mô tả để
phân biệt các hóa đơn
Khóa chính
9
Trang 142 Số lượng số Dữ liệu mô tả số
5 Mã Sinh Viên Chuỗi Dữ liệu mô tả mã
sinh viên để phân biệt
Khóa ngoại
Bảng 12 : Thông tin lưu trữ của lịch học.
1 Mã lịch học chuỗi Dữ liệu mô tả mã lịch
Bảng 13 : Thông tin lưu trữ của kết quả học tập.
1 Mã kết quả chuỗi Dữ liệu mô tả mã kết
Trang 153 Mã môn học chuỗi Dữ liệu mô tả mã
bé hơn 11
tổng kết
Phải lớn hơn hoặc bằng 0 và
bé hơn 11
7 Mã sinh viên chuỗi Dữ liệu mô tả phân
biệt kết quả của sinh viên
Khóa ngoại
8 Mã môn học chuỗi Dữ liệu mô tả phân
biệt kết quả theo mônhọc
Khóa ngoại
Bảng 14 : Thông tin lưu trữ của học bổng.
1 Mã học bổng chuỗi Dữ liệu mô tả mã
Trang 163 Đối tượng Text Dữ liệu mô tả tên đối
Bảng 15 : Thông tin lưu trữ của nhận học bổng.
Trang 17CƠ SỞ LÝ THUYẾT
CHƯƠNG 2 : CƠ SỞ LÝ THUYẾT
2.1 Mô hình thực thể kết hợp
- Mô hình thực thể kết hợp (Entity Relationship Diagram – ERD)
được sử dụng để biểu diễn cơ sở dữ liệu ở mức khái niệm Mô hìnhthực thể kết hợp bao gồm có các thực thể, danh sách thuộc tính vànhững mối kết hợp Thực thể là đối tượng cần quản lý, được biểu diễnthực thể bởi hình chữ nhật và có danh sách các thuộc tính.Mối kết hợpthể hiện mối liên quan giữa hai hay nhiều thực thể Mỗi liên kết có mộttên gọi và thường dùng động từ
2.2 Phụ thuộc hàm
- Phụ thuộc hàm là công cụ dùng để biểu diễn một cách hình thức mối quan hệ dữ liệu của các thuộc tính bên trong Cơ Sở Dữ Liệu, có thể
dễ dàng xác định khóa của quan hệ Phương pháp này có vai trò
nhằm tạo ra những quan hệ độc lập nhau, giảm thiểu sự trùng lặp, dữthừa dữ liệu.Vì thế giảm bớt các sai sót khi cập nhật dữ liệu của người
sử dụng hoặc còn dùng để đánh giá chất lượng thiết kế một Cơ Sở DữLiệu
2.3 Các dạng chuẩn
- Dạng chuẩn 1 (1NF) : là một quan hệ mà các giá trị trên từng thuộc
tính phải là giá trị nguyên tố và còn được gọi là cấu trúc phẳng
Ví dụ :
Bảng dữ liệu chưa đạt chuẩn 1
SP02
Trang 18- Dạng chuẩn 2 (2NF) : một quan hệ đạt dạng chuẩn 2(DC2) nếu và chỉ
nếu nó đạt DC1 và tất cả các thuộc tính không khóa phụ thuộc đầy đủvào khóa
Ví dụ :
Bảng dữ liệu chưa đạt chuẩn 2
Trang 19CƠ SỞ LÝ THUYẾT
- Dạng chuẩn 3 (3NF) : một quan hệ đạt dạng chuẩn 3(DC3) nếu và chỉ
nếu nó đạt DC2 và tất cả các thuộc tính không khóa không phụ thuộcbắc cầu vào khoá
Ví dụ :
Bảng dữ liệu chưa đạt chuẩn 3
Sản phẩm Giá SP Nhà sản xuất SĐT Nhà sản xuất
- Dạng chuẩn BCK : là một quan hệ đạt dạng chuẩn BOYCE CODD
KENT(BCK) nếu với mọi phụ thuộc hàm X->A không hiển nhiên địnhnghĩa trên quan hệ, A∉X thì X (mọi vế trái của tất cả các phụ thuộchàm) là một siêu khóa của quan hệ, nghĩa là X là một khóa hoặc chứamột khóa
3
Trang 20CƠ SỞ LÝ THUYẾT
2.4 Bảo toàn thông tin
- Bảo toàn thông tin trong cơ sở dữ liệu (CSDL) là rất quan trọng để
đảm bảo tính toàn vẹn, sự an toàn và quyền riêng tư của thông tin.Dưới đây là một số phương pháp giúp bảo toàn thông tin trong cơ sở
- Thiết kế chuẩn hóa CSDL: Sử dụng chuẩn hóa CSDL để giảm thiểu sựtrùng lặp và đảm bảo tính toàn vẹn của dữ liệu
- Xác thực và phân quyền truy cập: Xác định các người dùng được phéptruy cập vào dữ liệu và các quyền hạn của họ trong hệ thống CSDL
2.5 Lập trình cơ sở dữ liệu
- Lập trình cơ sở dữ liệu là quá trình xây dựng ứng dụng hoặc hệ thống
sử dụng ngôn ngữ lập trình để tương tác và quản lý cơ sở dữ liệu Điềunày bao gồm tạo, truy vấn, cập nhật và xóa dữ liệu từ cơ sở dữ liệu.Lập trình viên sử dụng các ngôn ngữ như SQL (Structured QueryLanguage) để thực hiện các tác vụ này và tương tác với cơ sở dữ liệuthông qua API hoặc trình điều khiển cơ sở dữ liệu Việc lập trình cơ sở
dữ liệu quan trọng để đảm bảo ứng dụng có thể lưu trữ và truy xuất dữliệu một cách hiệu quả, đồng thời giúp bảo vệ dữ liệu và đảm bảo tínhnhất quán của cơ sở dữ liệu
- Các ngôn ngữ lập trình phổ biến để tương tác với CSDL bao gồmSQL (Structured Query Language), PL/SQL (ProceduralLanguage/Structured Query Language), và T-SQL (Transact-SQL) Tùy vào hệ quản trị CSDL sử dụng, các ngôn ngữ này có
Trang 212.6 Ràng buộc toàn vẹn
- Trong một CSDL, luôn luôn tồn tại rất nhiều mối liên hệ ảnh hưởngqua lại lẫn nhau giữa các thuộc tính của một quan hệ, giữa các bộ giátrị trong một quan hệ và giữa các thuộc tính của các bộ giá trị trong cácquan hệ với nhau Các mối quan hệ phụ thuộc lẫn nhau này chính lànhững điều kiện bất biến mà tất cả các bộ của những quan hệ có liênquan trong cơ sở dữ liệu đều phải thỏa mãn ở bất kỳ thời điểm nào
5
Trang 22● Rất nhiều hệ thống NoSQL được
tối ưu để hỗ trợ data không quan
hệ ví dụ như XML và JSON c
● Hệ thống dạng này không hỗ trợgiao tác (ACID)
● OLAP query yêu cầu lượng codelớn để thực hiện Do đó sự dễ đọc(readability) sẽ giảm khi CSDLphình to
2.7.2 newSQL
Bảng 17 : newSQL
newSQL
● Giảm độ phức tạp cho app
● Tính năng SQL quen thuộc
● Phục vụ phân tích tốt hơn và khả
năng mở rộng tốt hơn SQL
● Nhiều hệ thống cung cấp theo
kiểu data truyền thống và query
model
● NewSQL thường phục vụ mụctiêu nhất định chứ không chungchung như SQL
● Kiến trúc nhớ vào bộ nhớ trong cóthể không phù hợp cho các khốilượng dữ liệu quá nhiều terabytes
Trang 23Hình 1 : ERD
PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
CHƯƠNG 3 : PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
7
Trang 24PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
3.1 Mô hình thực thể kết hợp
Trang 25và không được trùng nhau
trạng sinh viên
sinh viên
Khoá ngoại
Trang 26PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
Mô tả thông tin Ràng buộc
SV
khóa chính
nhau và có đúng 10 số
viên
phải khác nhau
Trang 27PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
Bảng 22 : Thực thể GiangVien
Thước
Mô tả thông tin
giảng viên
giảng viên
11
Trang 28PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
nhân giảng viên
phải đúng định dạng
và không được trùng nhau
trường của giảng viên
phải đúng định dạng
và không được trùng nhau
thoại giảng viên
Số điện thoại phải
đủ 10 số và khác nhau
cước công dân
phải khác nhau
Trang 29PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
Bảng 23 : Thực thể LopHocPhan
n
char 10 lưu mã lớp học phần Khóa chính
kết thúc
nhỏ hơn 4
0
13
Trang 30PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
Bảng 24 : Thực thể Khoa
thông tin
Ràng buộc
Bảng 25 : Thực thể LopHoc
thông tin
Ràng buộc
lượng sinh viên trong lớp
Trang 31PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
Trang 32PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
khóa ngoại
Trang 33PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
số sinh viên
khoá ngoại
17
Trang 34PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
3.3 Lược đồ cơ sở dữ liệu quan hệ
SinhVien (MaSV, HotenSV, Email, TinhTrang, #MaLop)
PhongHoc (MaPhongHoc, LoaiPhong)
ThongTinSV (MaThongTinSV, CCCD, GioiTinh, SoDienThoai, NgaySinh, DiaChi, #MaSV)
GiangVien (MaGV, HoTenGV, EmailTruong, EmailCaNhan, CCCD,
GioiTinh, SDT, NgaySinh, DiaChi)
MonHoc (MaMonHoc, TenMonHoc, SoTinChi, #MaKhoa)
Khoa (MaKhoa, TenKhoa)
LopHocPhan (MaLopHocPhan, Thu, TietHoc, NgayBD, NgayKT, HocKy,
#MaPhong, #MaGV, #MaMonHoc)
Trang 35PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
LopHoc (MaLop,SoLuong, #MaKhoa)
HocBong (MaHocBong, TenHocBong, DoiTuong, TienThuong, DieuKien)
TaiChinhSinhVien (MaPhi, TenPhi, NgayDong, GiamGia, SoTienCanDong, HocKy, #MaSV)
NhanHocBong (MaNhanHocBong, #MaSV, #MaHocBong)
LichHoc (MaLichHoc, #MaSV, #MaLopHocPhan, )
HoaDon (MaHoaDon, SoLuong, ThanhTien, #MaSV, #MaPhi)
KetQuaHocTap ( MaKetQua, #MaSV, #MaMonHoc, DiemCuoiKi,
DiemQuaTrinh, TongKet)
Hình 2 : lược đồ quan hệ dạng bảng
19
Trang 36PHÂN TÍCH VÀ THIẾT KẾ CƠ SỞ DỮ LIỆU
3.4 Phân tích chuẩn của lược đồ quan hệ
3.4.1 Lược đồ chuẩn 1
Tất cả lược đồ đã đạt chuẩn 1 vì không có lượt đồ nào tồn tại thuộc tính đa trị.3.4.2 Lược đồ chuẩn 2
3.4.2.1 SinhVien
- SinhVien(MaSV, HoTenSV, CCCD, TinhTrang, Lop, SoDienThoai,
NgaySinh, Email, GioiTinh, DiaChi, MaThanNhan, TenThanNhan,
● Xác định khóa của lược đồ này: MaSV, MaThanNhan
=> Vì từ 2 cột này có thể suy ra tất cả các cột
● Xác định tính đầy đủ:
+ MaSV, MaThanNhan → TenThanNhan, SoDienThoaiTN
+ MaThanNhan → TenThanNhan, SoDienThoaiTN
=> thuộc tính TenThanNhan, SoDienThoaiTN không phụ thuộc đầy đủ vào khóa haycòn gọi phụ thuộc một phần của khóa
Kết luận: Chưa đạt chuẩn 2
Để đạt chuẩn 2: Tách bảng thành các bảng con để khử được phụ thuộc hàm: