̣ ̣
̣
̉ Ợ ĐAI HOC THUY L I KHOA CÔNG NGHÊ THÔNG TIN
̃
Ị Ơ Ở Ư
Ả
Ệ
̣
MÔN H QU N TR C S D LIÊU
Ậ Ớ
BÁO CÁO BÀI T P L N
Ự Ầ Ả Ề ề Đ tài : XÂY D NG PH N M M QU N LÝ
Ế TRUNG TÂM TI NG ANH
ướ ọ ễ ỳ ả Gi ng Viên H ng D n ẫ : TH.S Nguy n Ng c Qu nh Châu
̣
ệ ố
Trang 1/ 37
ạ ị L p ớ : 61PM1 Nhóm : 19 ự : Mã sinh viên : SV th c hiên Hoàng Qu c Hi p 1951060695 ằ Ph m Th Thúy H ng 1951060690
Trang 2/ 37
ộ Hà N i, ngày 30 tháng 10 năm 2021
Trang 3/ 37
Trang 4/ 37
Ụ Ụ M C L C
Trang 5/ 37
́
̀ ơ
̀ L i noi đâu
ệ ượ ọ ủ ộ ố Hi n nay, công ngh thông tin đ
́ ể ệ ố
ệ ẽ ủ ự ể c xem là m t ngành mũi nh n c a qu c ạ t là các qu c gia đang phát tri n, tiên hành công nghi p hóa hi n đ i ệ c ta. S bùng n thông tin và s phát tri n m nh m c a công ngh
ự ̀ ể ố ọ ̉ t c các ngành, các
ệ ệ ặ gia, đ c bi ạ ư ướ ổ hóa nh n ấ ả ậ ố ỹ k thu t s , yêu câu mu n phát tri n thì phai tin h c hóa t lĩnh v c.ự
ể ề ầ Cùng v i s phát tri n nhanh chóng v ph n c ng máy tính, các ph n
ớ ự ở ầ ứ ệ ề ỗ ợ ệ
ườ ạ ề i. Các ph n m m hi n nay ngày càng mô ph ng đ
ề ượ ấ c r t nhi u ử ờ ầ ỗ ợ ệ ử ụ ậ ơ ỏ i dùng thu n ti n s d ng, th i gian x lí
ệ ụ ượ ự ộ ộ ố ả m m ngày càng tr nên đa d ng, phong phú, hoàn thi n h n và h tr hi u qu ệ cho con ng ườ ệ ụ nghi p v khó khăn, h tr cho ng nhanh chóng, và m t s nghi p v đ đ ng hóa cao. c t
́ ế ̣
ề ề
ố ả ầ ấ ộ ̣ ̉ ̣ ̣ ườ c toàn b hoc viên( thông tin, điêm s , lô trinh hoc,...), l p
ư ̉ ̣ ̉ ̉
ề ệ ứ
ả ệ ỏ ố ề ủ ấ
ệ ụ ư ự ự ộ ấ ả ờ ằ ỉ ệ ố
ồ ộ ễ ị ấ ạ ố ộ ố ề ư
ộ
ọ ể ọ ụ ẽ ở ớ ự ễ ậ ệ ả ơ
ả ề ụ ư ệ ả ự ỗ ợ Ví d nh vi c qu n lí môt trung tâm Tiêng Anh. N u không có s h tr ả ệ ọ ủ c a tin h c, vi c qu n lí này ph i c n r t nhi u ng i, chia thành nhi u khâu, ̀ ớ ượ ả ể ớ m i có th qu n lí đ ́ ̀ ố ọ h c( sĩ s , giáo viên giang day...), giang viên,... cũng nh các quy trinh quan ly trung tâm. Các công vi c này đòi h i nhi u th i gian và công s c, mà s chính ộ xác và hi u qu không cao, vì đa s đ u làm b ng th công r t ít t đ ng. M t ố s nghi p v nh tra c u, th ng kê, và hi u ch nh thông tin khá v t v . Ngoài ra ữ còn m t s khó khăn v v n đ l u tr khá đ s , d b th t l c, t n kém,... Trong khi đó, các nghi p v này hoàn toàn có th tin h c hóa m t cách d dàng. V i s giúp đ c a tin h c, vi c qu n lí h c v s tr nên đ n gi n, thu n ti n, nhanh chóng và hi u qu h n r t nhi u.
ầ ủ ệ ố yêu c u c a h th ng, phân ế ặ ả ả ự c ph n m m qu n lý trung tâm Ti ng Anh trên
Trang 6/ 37
ứ ề ấ ệ ụ ệ ọ ả ơ ấ M c tiêu c a bài báo cáo là nêu rõ các đ c t ượ ế ế ể ệ ề ự ộ ả ỡ ủ ệ ụ ủ ầ t k đ xây d ng đ tích, thi ụ ụ ph c v cho vi c qu n lý hoàn toàn t đ ng trên máy tính.
I.
1.1.
Ệ Ố Ủ Ặ Ầ BÀI TOÁN Đ T RA VÀ YÊU C U C A H TH NG
ớ
ệ ề ề i thi u v đ tài: ư ề t, hi n nay r t nhi u trung tâm Ti ng Anh đ
ả ế ườ ủ
ề ả i
ở ượ c m ộ i. Trong m t trung ờ ể ả ấ i quy t r t nhi u v n đ đ ng th i đ gi ậ ầ ấ ư ế ộ
ề ượ ố ượ ữ ệ ấ ả ặ ọ
t vào nh ng mùa hè l ầ ậ ể ế ượ ả ặ Gi ệ ế ấ Nh chúng ta đã bi ệ ằ ọ ỹ ạ ế lên nh m đào t o, c i thi n k năng Ti ng Anh c a m i ng ề ồ ế ấ ầ ế tâm Ti ng Anh chúng ta c n gi ả ề ấ ữ quy t nh ng v n đ đó chúng ta c n r t nhi u b ph n qu n lý nh nhân viên, ng ng h c viên tăng r t cao, s l gi ng viên, …Đ c bi ấ ọ h c viên r t đông. Vì v y yêu c u đ t ra là : Ph i làm sao đ ti c
ậ ượ ệ ố ả ự ồ ờ ả ệ t ki m đ ứ th i gian, ngu n nhân l c, b o m t đ ủ c h th ng qu n lý, đáp ng đ
1.2.
ầ ủ ọ ả nhu c u c a h c viên, gi ng viên,…?
ầ ủ
ặ ả ứ ầ ả ọ ả Yêu c u chung c a bài toán: Đ c t ể yêu c u, ch c năng: Qu n lý đi m c a h c viên, qu n lý h c phí
ả ả ưở ả ọ ủ ọ ng gi ng viên, qu n lý tài
1.3.
ủ ọ c a h c viên trong các khóa h c, qu n lý khen th ộ ấ ệ li u, c p đ , khóa h c.
ế ứ ọ ả
i quy t bài toán: ắ ủ ề ặ
1.4.
ệ ụ ự ầ ề ể ế ạ
Cách th c gi ể ữ Tìm hi u quy t c nghi p v , các yêu c u đ t ra c a đ tài. Các ngôn ng ơ ở ữ ệ ử ầ ậ l p trình và c s d li u. Xây d ng ph n m m. Ti n hành ki m tra và ch y th . ể ệ ụ ủ Phát bi u nghi p v c a bài toán:
ọ ả ề ế ả ọ : Nhân viên qu n lý trung tâm có quy n tìm ki m h c Qu n lý h c viên
ủ ọ ớ ử ữ ọ ọ
ữ ọ viên, in danh sách h c viên, thêm nh ng h c viên m i, s a thông tin c a h c viên, xóa nh ng h c viên ngh h c.
ả ứ ả ỗ ưở ỉ ọ ưở ẽ M i gi ng viên s có m c khen th ng khác Qu n lý khen th ng:
ữ ề ả ả ổ ượ c
ưở nhau, nhân viên qu n lý trung tâm có quy n b sung thêm nh ng gi ng viên đ khen th
ỏ ữ ữ ậ ớ ớ ng. ả ử ớ Nh p m i thông tin l p, s a ch a thông tin, xóa b nh ng Qu n lý l p:
ọ ớ l p đã h c xong.
ể ả ề ậ ủ ể ả ậ ọ : Gi ng viên có quy n c p nh t đi m thi c a các h c Qu n lý đi m thi
ọ
ứ ọ ấ ộ ế ả ể viên, tìm ki m đi m thi theo h c viên. ọ ậ ớ Nh p m i các m c h c phí tùy theo các c p đ mà
ữ
Qu n lý h c phí: ử trung tâm có, s a ch a thông tin. ấ ả ộ Qu n lý c p đ :
ờ ệ ố ữ ệ ủ ả ấ ồ ọ ẽ ấ ộ Các c p đ mà trung tâm có dành cho các khóa h c s ẽ i h th ng. Đ ng th i h th ng s qu n lý d li u c a các c p c l u l
ượ ư ạ ạ ệ ố đ i t đ .ộ
ả ổ ọ ườ ọ ọ B sung các khóa h c th ng xuyên. Các khóa h c mà
Trang 7/ 37
ẽ ượ ư ạ ạ ệ ố ẽ ả ồ Qu n lý khóa h c: c l u l trung tâm có s đ ữ ờ ệ ố i h th ng. Đ ng th i h th ng s qu n lý d i t
li u.ệ
ậ ố ượ ậ ệ ườ ề ỉ ả ệ C p nh t s l ng tài li u th ng xuyên và đi u ch nh
II.
Qu n lý tài li u: ộ ớ ấ ợ ộ n i dung phù h p v i c p đ . Ệ Ố PHÂN TÍCH H TH NG
ủ ệ ố ứ 2.1. Phân tích ch c năng c a h th ng
ệ ố ứ Hình 1: Mô hình ch c năng h th ng
⮚
ườ ử ụ ệ ố 2.2. Ng i s d ng h th ng
ọ ả ưở ả
ấ ả ủ ệ ố
⮚
ậ ớ ề ưở ế ng và l p. C p nh t, s a đ i, b sung khi c n thi
ầ ố ớ ậ ề ổ ứ
⮚
ể ậ
ng và qu n lý ố ứ t c các ch c năng c a h th ng đ i ậ ử ổ t. ể ấ : Gi ng viên có quy n truy c p các ch c năng đ i v i đi m ố ậ ề ọ ủ ọ ọ ể ươ ầ ự ng tác v i ph n m m qua mã h c viên, xem tr c
ế ả Nhân viên: Nhân viên qu n lý h c viên, qu n lý khen th ớ l p. Nhân viên có quy n truy c p vào t ớ ọ v i h c viên, khen th ả ả Gi ng viên ử ổ ủ ọ c a h c viên. C p nh t đi m thi, s a đ i và th ng kê đi m c a h c viên. ớ ọ H c viên : H c viên t ủ ể ti p đi m c a mình.
III.
Ự Ự Ế Ể XÂY D NG MÔ HÌNH TH C TH LIÊN K T ER
ị ắ
ả ả
ề ấ ỗ ố ệ ạ
ả ả ố
ổ ả ả
Trang 8/ 37
ộ 3.1. Xác đ nh các quy t c và ràng bu c a) Trung tâm có nhi u gi ng viên (GIANGVIEN). M i gi ng viên có mã ả ả (MaGV) duy nh t và tên gi ng viên (tenGV), s đi n tho i gi ng viên ạ ủ (SdtGV) và s bu i gi ng d y c a gi ng viên đó (SobuoiGD). ỗ ớ ượ ạ ạ b) M i gi ng viên gi ng d y nhi u l p (LOP). M i l p đ ể ỗ ả ủ ộ ộ ở ề ớ c d y b i nhi u ế ượ gi ng viên. Thu c tính (NgayGD) là thu c tính c a ki u liên k t đ ề c dùng
ạ ả ạ ủ ả ạ ỗ
ộ ớ ờ ế ớ ở
ả ể đ ghi l i ngày gi ng d y c a m i gi ng viên khi gi ng d y m t l p nào đó. ờ ấ ỗ ớ M i l p có mã l p (MaLop) duy nh t, th i gian m (TgianMo), th i gian k t ự ế ứ ọ thúc (TgianKetthuc), m c h c viên d ki n (HVDK).
ộ ớ ỗ ọ ọ
ề ấ ớ i
ọ ố ệ ỗ ọ ọ c) M t l p có nhi u h c viên (HOCVIEN). M i h c viên có mã h c viên (MaHV) duy nh t, tên h c viên (TenHV), ngày sinh(Ngaysinh), gi ạ tính(Gioitinh) và có s đi n tho i riêng dành cho m i h c viên (SDTHocvien).
ọ
ọ ậ ạ d) M i h c viên h c t p t ọ ỗ ọ ọ ộ ọ ả ọ ỗ i trung tâm đăng ký m t khóa h c (KHOAHOC). M i khóa h c
ọ ẽ ể ề ấ e) Trong m i khóa h c s có nhi u c p đ (CAPDOKH) đ phù h p v i
khóa h c có mã khóa h c(MaKH), tên khóa h c (TenKH) và mô t (MotaKH). ỗ ọ ủ ọ ệ
ộ ẽ ượ ộ ỗ ấ ộ ư ộ ấ ỗ ấ ộ ề ạ ả
ấ ộ ớ ợ ụ c ph trách nguy n v ng đăng ký c a h c viên, nh ng m i c p đ s đ ỗ ớ ồ ở b i nhi u gi ng viên và m i l p d y m t c p đ . M i c p đ bao g m có ộ ấ mã c p đ (MaCD), tên c p đ (TenCD).
ỗ ộ ớ i thông
ủ ấ
ủ ả ổ ố ố ớ ỗ
ư ạ ả f) M i nhân viên (NHANVIEN) qu n lý m t l p. Trong nhân viên l u l tin c a nhân viên là có mã nhân viên (MaNV) duy nh t, tên nhân viên ổ (TenNV) và s bu i đi làm (s bu i qu n lý l p) c a m i nhân viên (SobuoiQL).
g) L u l
ườ ề ư ạ i thông tin v nhân viên qu n lý tr c ti p c a nhân viên. Ng ả i qu n
ự ế ượ ọ ả lý tr c ti p cũng là m t nhân viên đ
h) M i c p đ có m c h c phí (HOCPHI) khác nhau. M i m c h c phí ta l u
ứ ọ ư ộ
ộ ứ ọ ề ạ l
ự ế ủ c g i là NVQL. ỗ ấ ỗ ộ i thông tin v t ng ti n (Tongtien) c a m i c p đ . ỗ ượ ộ ề ổ ả i) M i gi ng viên đ
ọ ưở ấ ỗ ấ ế ng (KHENTHUONG) sau khi k t ng (MaKT) duy nh t và
ả thúc khóa h c. Trong khen th ợ m c đ khen th
j) V i m i c p đ s ng v i nhi u tài li u (TAILIEU). M i tài li u có mã tài
ủ ưở ứ c m t m c khen th ưở ng có mã khen th ớ ừ ng phù h p v i t ng gi ng viên (MucdoKT). ệ ề ỗ ấ ệ ớ ỗ
ưở ộ ẽ ứ ấ ệ
k) M i h c viên s tham gia nhi u bài thi phù h p v i c p đ mà h c viên đó
ứ ộ ớ ệ ỗ ọ li u (MaTL) duy nh t và tên tài li u (TenTL). ợ ộ ọ
ủ ể ớ ấ ọ ề ẽ ư ạ ả i đi m c a các h c viên (DiemCD) sau khi
l) B ng đăng nh p (ACCOUNT) đ l u l
ẽ đăng ký. B ng thi (THI) s l u l thi. ả ậ ể ư ạ ả i tài kho n.
ị ộ ự
ả ả
ỗ ố ệ ề ấ ạ
ả ả ổ ố
Trang 9/ 37
ế ể 3.2. Xác đ nh th c th , thu c tính và liên k t a) Trung tâm có nhi u gi ng viên (GIANGVIEN). M i gi ng viên có mã ả ả (MaGV) duy nh t và tên gi ng viên (tenGV), s đi n tho i gi ng viên ạ ủ (SdtGV) và s bu i gi ng d y c a gi ng viên đó (SobuoiGD). ► GIANGVIEN (MaGV, TenGV, SdtGV, SobuoiGD).
ả ả
ộ ủ ộ ề c dùng
ỗ ớ ượ ạ ạ b) M i gi ng viên gi ng d y nhi u l p (LOP). M i l p đ ể ả ạ ủ ạ ạ ả
ế ớ ở
ỗ ở ề ớ c d y b i nhi u ế ượ ả gi ng viên. Thu c tính (NgayGD) là thu c tính c a ki u liên k t đ ộ ớ ả ỗ ể i ngày gi ng d y c a m i gi ng viên khi gi ng d y m t l p nào đó. đ ghi l ờ ờ ấ ỗ ớ M i l p có mã l p (MaLop) duy nh t, th i gian m (TgianMo), th i gian k t ự ế ứ ọ thúc (TgianKetthuc), m c h c viên d ki n (HVDK). ► LOP (MaLop, TgianMo, TgianKetthuc, HVDK).
ọ ộ ớ ỗ ọ
ề ấ ớ i
ọ ố ệ ỗ ọ
ọ c) M t l p có nhi u h c viên (HOCVIEN). M i h c viên có mã h c viên (MaHV) duy nh t, tên h c viên (TenHV), ngày sinh(Ngaysinh), gi ạ tính(Gioitinh) và có s đi n tho i riêng dành cho m i h c viên (SDTHocvien). ► HOCVIEN (MaHV, TenHV, NgaySinh, Gioitinh, SDTHocvien).
ọ
ọ ậ ạ d) M i h c viên h c t p t ọ ỗ ọ ọ ộ ọ ả khóa h c có mã khóa h c(MaKH), tên khóa h c (TenKH) và mô t ỗ i trung tâm đăng ký m t khóa h c (KHOAHOC). M i khóa h c ọ Trang 10/ 37
(MotaKH). ► KHOAHOC (MaKH, TenKH, MotaKH).
ọ ẽ ể ề ấ e) Trong m i khóa h c s có nhi u c p đ (CAPDOKH) đ phù h p v i
ệ ỗ ọ ủ ọ
ộ ẽ ượ ộ ỗ ấ ộ ư ộ ấ ỗ ấ ộ ề ạ ả
ấ ộ
ớ ợ ụ c ph trách nguy n v ng đăng ký c a h c viên, nh ng m i c p đ s đ ỗ ớ ồ ở b i nhi u gi ng viên và m i l p d y m t c p đ . M i c p đ bao g m có ộ ấ mã c p đ (MaCD), tên c p đ (TenCD). ► CAPDOKH (MaCD, TenCD).
ỗ ộ ớ i thông
ủ ấ
ủ ả ố ổ ố ớ ỗ
ư ạ ả f) M i nhân viên (NHANVIEN) qu n lý m t l p. Trong nhân viên l u l tin c a nhân viên là có mã nhân viên (MaNV) duy nh t, tên nhân viên ổ (TenNV) và s bu i đi làm (s bu i qu n lý l p) c a m i nhân viên (SobuoiQL).
g) L u l
ề ư ạ ườ i thông tin v nhân viên qu n lý tr c ti p c a nhân viên. Ng ả i qu n
ượ ọ ự ế ộ
Trang 11/ 37
ự ế ủ ả lý tr c ti p cũng là m t nhân viên đ c g i là NVQL. ► NHANVIEN (MaNV, TenNV, SobuoiQL, NVQL).
̀ ́ ượ ̣ ̉ ́ Nhân viên đo đ c goi la nhân viên quan ly (NVQL).
h) M i c p đ có m c h c phí (HOCPHI) khác nhau. M i m c h c phí ta l u
ứ ọ ư ộ
ứ ọ ề ỗ ấ ủ ạ l
ỗ ỗ ấ ộ ề ổ i thông tin v t ng ti n (Tongtien) c a m i c p đ . ► HOCPHI (Tongtien).
ỗ ượ ộ ả i) M i gi ng viên đ
ứ c m t m c khen th ưở ưở ấ ọ ế ng (KHENTHUONG) sau khi k t ng (MaKT) duy nh t và
ưở ưở ng có mã khen th ớ ừ ng phù h p v i t ng gi ng viên (MucdoKT). thúc khóa h c. Trong khen th ợ m c đ khen th
ứ ộ ả ► KHENTHUONG (MaKT, MucdoKT).
j) V i m i c p đ s ng v i nhi u tài li u (TAILIEU). M i tài li u có mã tài Trang 12/ 37
ớ ộ ẽ ứ ỗ ấ ề ệ ệ ỗ ớ
ệ ệ ấ li u (MaTL) duy nh t và tên tài li u (TenTL).
► TAILIEU (MaTL, TenTL).
k) M i h c viên s tham gia nhi u bài thi phù h p v i c p đ mà h c viên đó
ộ ọ ợ ỗ ọ
ủ ể ớ ấ ọ ề ẽ ư ạ ả i đi m c a các h c viên (DiemCD) sau khi
ẽ đăng ký. B ng thi (THI) s l u l thi.
► THI (DiemCD).
l) B ng đăng nh p (ACCOUNT) đ l u l
ể ư ạ ậ
ả ả i tài kho n. ► ACCOUNT (Tendangnhap, Matkhau, Vaitro).
3.3. Xây d ng mô hình th c th liên k t ER
Trang 13/ 37
ự ự ế ể
ự ể ế Hình 2: Mô hình liên k t th c th ER
IV.
Ể Ừ Ự Ế Ể CHUY N T MÔ HÌNH TH C TH LIÊN K T SANG MÔ HÌNH
ướ ả ự ể ừ ự QUAN HỆ B ể ế → các b ng /quan h . ệ
c 1: Các th c th (tr th c th y u) GIANGVIEN (MaGV, TenGV, SdtGV, SobuoiGD). LOP (MaLop, TgianMo, TgianKetthuc, HVDK). HOCVIEN (MaHV, TenHV, NgaySinh, Gioitinh, SDTHocvien). KHOAHOC (MaKH, TenKH, MotaKH). CAPDOKH (MaCD, TenCD). NHANVIEN (MaNV, TenNV, SobuoiQL, NVQL). HOCPHI (Tongtien). KHENTHUONG (MaKT, MucdoKT). TAILIEU (MaTL, TenTL). THI (DiemCD).
ể ế
ướ ướ ế ạ B B c 2: Không có th c th y u. ủ c 3: Liên k t 11
ư ế ự → khóa c a 1 bên sang làm khóa ngo i bên kia. ủ KHENTHUONG GIANGVIEN có liên k t 11: Đ a khóa chính c a
ạ ủ
Trang 14/ 37
GIANGVIEN sang làm khóa ngo i c a KHENTHUONG. → KHENTHUONG (MaKT, MucdoKT, MaGV).
ư ủ ế NHANVIEN LOP có liên k t 11 : Đ a khóa chính c a NHANVIEN
ạ ủ sang làm khóa ngo i c a LOP.
ư → LOP (MaLop, TgianMo, TgianKetthuc, HVDK, MaNV). ủ ế LOP CAPDOKH có liên k t 11 : Đ a khóa chính c a LOP sang làm
ạ ủ khóa ngo i c a CAPDOKH.
ư → CAPDOKH (MaCD, TenCD, MaLop). ủ ế KHOAHOC HOCVIEN có liên k t 11 : Đ a khóa chính c a
ạ ủ KHOAHOC sang làm khóa ngo i c a HOCVIEN
→ HOCVIEN (MaHV, TenHV, NgaySinh, Gioitinh, SDTHocvien,
MaKH).
ư ủ ế CAPDOKH HOCPHI có liên k t 11 : Đ a khóa chính c a CAPDOKH
sang làm khóa ngo i c a HOCPHI
ạ ủ → HOCPHI (MaCD, TongTien)
ế ủ ả ạ ở ả ở c 4: Liên k t 1N → khóa c a b ng bên 1 tr thành khóa ngo i b ng bên
ướ B nhi u.ề
ủ ư ế CAPDOKH GIANGVIEN có liên k t 1N: Đ a khóa chính c a
CAPDOKH sang thành khóa ngo i c a GIANGVIEN.
ư ủ ạ ủ → GIANGVIEN (MaGV, TenGV, SdtGV, SobuoiGD, MaCD). CAPDOKH TAILIEU có liên k t 1N: Đ a khóa chính c a CAPDOKH
ế sang thành khóa ngo i c a TAILIEU.
ủ ế ạ ủ → TAILIEU (MaTL, TenTL, MaCD). KHOAHOC CAPDOKH có liên k t 1N: Đ a khóa chính c a
ạ ủ ư KHOAHOC sang làm khóa ngo i c a CAPDOKH.
ư ủ ế → CAPDOKH (MaCD, TenCD, MaLop, MaKH). LOP HOCVIEN có liên k t 1N: Đ a khóa chính c a LOP sang làm
ạ ủ khóa ngo i c a HOCVIEN.
→ HOCVIEN (MaHV, TenHV, NgaySinh, Gioitinh, SDTHocvien, MaKH,
MaLop).
ộ ể ỉ ủ ả i qu n lý. NVQL là khóa ngoài c a
ế ườ ** Thu c tính NVQL đ ch ra ng ế nhân viên tham chi u đ n NHANVIEN.
ư → NHANVIEN (MaNV, TenNV, SobuoiQL, NVQL). ủ ế HOCVIEN THI có liên k t 1 N : Đ a khóa chính c a HOCVIEN sang
làm khóa ngo i c a THI.
ư ủ ế ạ ủ → THI (DiemCD, MaHV). CAPDOKH THI có liên k t 1 N : Đ a khóa chính c a CAPDOKH sang
Trang 15/ 37
ạ ủ làm khóa ngo i c a THI.
→ THI (DiemCD, MaHV, MaCD).
ế ướ ệ ớ ủ ể ả c 5: Liên k t MN
ạ ủ ủ ệ ệ
ạ → Thêm 1 b ng/ quan h m i R, chuy n khóa chính c a B hai quan h phía M và N thành khóa ngo i c a quan h R. Khóa chính c a R là ự ế ợ ủ s k t h p c a 2 khóa ngo i.
ệ ớ ế GIANGVIEN LOP có liên k t MN: Thêm quan h m i tên
ớ ủ
ự ế ợ ủ ạ ủ ủ ủ ạ ộ
GIANGDAY v i khóa chính c a GIANGVIEN và LOP là khóa ngo i c a R. Khóa chính c a R là s k t h p c a hai khóa ngo i. Và thu c tính c a liên k t.ế
→ GIANGDAY (MaGV, MaLop, NgayGD).
ộ
ế ậ
ướ ướ ướ ị c 6: Không có thu c tính đa tr . c 7: Không có liên k t b c >2. c 8:
Trang 16/ 37
B B B GIANGVIEN (MaGV, TenGV, SdtGV, SobuoiGD, MaCD). LOP (MaLop, TgianMo, TgianKetthuc, HVDK, MaNV). HOCVIEN (MaHV, TenHV, NgaySinh, Gioitinh, SDTHocvien, MaKH, MaLop). KHOAHOC (MaKH, TenKH, MotaKH). CAPDOKH (MaCD, TenCD, MaLop, MaKH). NHANVIEN (MaNV, TenNV, SobuoiQL, NVQL). HOCPHI (MaCD, TongTien). KHENTHUONG (MaKT, MucdoKT, MaGV). TAILIEU (MaTL, TenTL, MaCD). THI (DiemCD, MaHV, MaCD). GIANGDAY (MaGV, MaLop, NgayGD).
Hình 3: Mô hình quan hệ
V.
Ệ Ố MÔ HÌNH H TH NG
Trang 17/ 37
ả ệ ố Hình 4.1: Mô hình h th ng qu n lý TTTA
ệ ố ả Hình 4.2: Mô hình h th ng qu n lý TTTA
Trang 18/ 37
ệ ố ả Hình 4.3: Mô hình h th ng qu n lý TTTA
ệ ố ả Hình 4.4: Mô hình h th ng qu n lý TTTA
VI.
Ệ Ấ
CÂU L NH TRUY V N SQL. ạ ữ ệ ả
5.1. T o và thêm d li u vào b ng. Create database QLTTTA Use QLTTTA
̣ ̉
Tao bang KHOAHOC Create table KHOAHOC( MaKH char (15) not null primary key, TenKH Nvarchar (40), MotaKH Nvarchar (100));
̣ ̉
Trang 19/ 37
Tao bang HOCVIEN Create table HOCVIEN( MaHV char(15) not null primary key, TenHV Nvarchar(40), Ngaysinh date, Gioitinh Nvarchar(10), SDTHocVien varchar(20), MaKH char(15), MaLop char(15),
foreign key (MaKH) references KHOAHOC(MaKH), foreign key (MaLop) references LOP(MaLop));
̣ ̉
Tao bang LOP Create table LOP( MaLop char (15) not null primary key, TgianMo date, TgianKetthuc date, HVDK float, MaNV char(15), foreign key (MaNV) references NHANVIEN(MaNV));
̣ ̉
Tao bang NHANVIEN Create table NHANVIEN( MaNV char(15) not null primary key, TenNV Nvarchar(40), SobuoiQL float, NVQL char(15));
̣ ̉
Tao bang HOCPHI Create table HOCPHI( MaCD char(15), Tongtien float, foreign key (MaCD) references CAPDOKH(MaCD));
̣ ̉
Tao bang CAPDOKH Create table CAPDOKH( MaCD char(15) not null primary key, TenCD Nvarchar(40), MaLop char(15), MaKH char(15), foreign key (MaLop) references LOP(MaLop), foreign key (MaKH) references KHOAHOC(MaKH));
̣ ̉
Trang 20/ 37
Tao bang KHENTHUONG Create table KHENTHUONG( MaKT char(15) not null primary key, MucdoKT float,
MaGV char(15), foreign key (MaGV) references GIANGVIEN(MaGV));
̣ ̉
Tao bang GIANGVIEN Create table GIANGVIEN( MaGV char(15) not null primary key, TenGV Nvarchar(40), SdtGV varchar(40), SobuoiGD float, MaCD char(15), foreign key (MaCD) references CAPDOKH(MaCD));
̣ ̉
Tao bang TAILIEU Create table TAILIEU( MaTL char(15) not null primary key, TenTL Nvarchar(40), MaCD char(15), foreign key (MaCD) references CAPDOKH(MaCD));
̣ ̉
Tao bang GIANGDAY Create table GIANGDAY( MaGV char(15) not null, MaLop char(15) not null, NgayGD date, primary key (MaGV, MaLop), foreign key (MaGV) references GIANGVIEN(MaGV), foreign key (MaLop) references LOP(MaLop));
̣ ̉
Tao bang THI Create table THI( MaHV char(15), MaCD char(15), DiemCD float, foreign key (MaHV) references HOCVIEN(MaHV), foreign key (MaCD) references CAPDOKH(MaCD));
ả ạ
Trang 21/ 37
ậ T o b ng đăng nh p Create table Account(
Tendangnhap Nvarchar(30) not null primary key, Matkhau Nvarchar(30), Vaitro Nvarchar(30));
Select * From NHANVIEN
̉
́ư ,5,'NVQL01'),
̣
̉
̃ư ̣ Thêm d liêu bang NHANVIEN Insert into NHANVIEN Values ('NV01',N'Đ c Anh' ('NV02',N'Thanh Huyên'̀ ,4,''), ,10,''), ('NV03',N'Diêu Châu' ,8,'NVQL02'), ('NV04',N'Bao Trinh' ('NV05',N'Văn Lâm',6,'NVQL03');
Select * From LOP
̃ư ̣ ̉
Thêm d liêu bang LOP Insert into LOP Values ('L01','2020/06/14','2020/07/14',30,'NV01'), ('L02','2020/06/14','2020/07/14',35,'NV01'), ('L03','2020/12/5','2021/1/5',30,'NV02'), ('L04','2021/05/14','2021/06/14',40,'NV03'), ('L05','2021/08/11','2021/09/11',30,'NV04'), ('L06','2021/11/12','2021/12/12',35,'NV01');
Select * From HOCVIEN
̉
́ ̀ ,'2010/10/10',N'N 'ữ ,1234,'K01','L01'),
̣ ,'2008/03/07',N'Nam',1235,'K02','L05'),
́ư ̉ ,'2009/12/25',N'Nam',4234,'K03','L02'),
,'2010/02/25',N'Nam',5634,'K04','L01'), ,'2007/11/15',N'Nam',1674,'K05','L02'),
̃ ́ ,'2010/10/04',N'N 'ữ ,1298,'K06','L03'),
̃
̀
Trang 22/ 37
̃ư ̣ Thêm d liêu bang HOCVIEN Insert into HOCVIEN Values ('HV01',N'Thuy Hăng' ́ ('HV02',N'Quôc Hiêp' ('HV03',N'Đ c Hai' ('HV04',N'Huy Hoang'̀ ('HV05',N'Văn Thăng' ('HV06',N'My Linh' ('HV07',N'Nguyên Thuy' ('HV08',N'Hoang D ng' ('HV09',N'Nguyên C ng' ́ ,'2008/12/05',N'N 'ữ ,7334,'K07','L04'), ươ ,'2009/02/24',N'Nam',1924,'K08','L05'), ̃ ươ ,'2010/11/17',N'Nam',1934,'K09','L04'),
('HV10',N'Xuân Chiên'́ ,'2008/12/16',N'Nam',1904,'K10','L04');
Select * From KHOAHOC
̉
̀ ),
̉ ̉
́ ượ ́ ng' ), ́ ơ
́ ̀ ́ ̣
́ ̀ ),
̀ ),
̉ ̉
́ ượ ́ ng' ́ ơ
́ ̣ ̃ư ̣ Thêm d liêu bang KHOAHOC Insert into KHOAHOC Values ('K01','Ielts 7.5',N'Cam kêt đâu ra' ́ ('K02','Toeic',N'Đam bao chât l ̀ ́ ̉ ư ), ươ ('K03','Communicate',N'Giao tiêp v i ng i ban x ' ở ), ('K04','Listening',N'Hoc phi đi kem sach v ' ('K05','Ielts 6.0',N'Cam kêt đâu ra' ('K06','Speaking',''), ('K07','Ielts 8.0',N'Cam kêt đâu ra' ́ ('K08','',N'Đam bao chât l ), ('K09','Writing',N'Giao tiêp v i ng ̀ ('K10','Ieltes 5.0',N'Hoc phi đi kem sach v ' ̀ ́ ̉ ư ), ươ i ban x ' ́ ở );
Select * From CAPDOKH
̉
̃ư ̣ Thêm d liêu bang CAPDOKH Insert into CAPDOKH Values ('Level 1','Start','L01','K01'), ('Level 2','Prepare','L01','K01'),('Level 3','Pepare','L02','K02'), ('Level 4','Finish','L02','K02'),('Level 5','Start','L03','K03'), ('Level 6','Prepare','L04','K03'),('Level 7','Start','L05','K04'), ('Level 8','Finish','L06','K04');
Select * From HOCPHI
̃ư ̣ ̉
Thêm d liêu bang HOCPHI Insert into HOCPHI Values ('Level 1',4000000),('Level 2',4500000),('Level 3',4750000), ('Level 4',3500000),('Level 5',5000000),('Level 6',3750000), ('Level 7',4800000),('Level 8',3500000);
Select * From GIANGVIEN
Trang 23/ 37
̃ư ̣ ̉ Thêm d liêu bang GIANGVIEN
ươ ,2343,20,'Level 2'), ng'
̣
̣ ,2347,20,'Level 5'), ,1345,26,'Level 8'),
Insert into GIANGVIEN Values ('GV01','Jully',2345,20,'Level 1'), ('GV02',N'Văn Ph ('GV03','Holly',2349,25,'Level 3'), ('GV04','Jone',2245,20,'Level 1'), ('GV05','Thomas',9345,25,'Level 4'), ('GV06',N'Diêp Linh' ('GV07',N'Ngoc Anh' ('GV08','Alice',2445,20,'Level 6');
Select * From KHENTHUONG
̃ư ̣ ̉
Thêm d liêu bang KHENTHUONG Insert into KHENTHUONG Values ('KT01',1.5,'GV02'),('KT02',1.0,'GV04'),('KT03',1.6,'GV01'), ('KT04',2.0,'GV03'),('KT05',1.55,'GV06');
Select * From TAILIEU
̉
̀ ̣ ̣ ,'Level 1'),
,'Level 1'),('TL02',N'Tai liêu A2' ̀ ̣ ̣
̀ ̣ ̣
̣ ̣
̀ ̀ ̀ ̀ ̀ ̀ ̣ ̣ ̃ư ̣ Thêm d liêu bang TAILIEU Insert into TAILIEU ̀ Values ('TL01',N'Tai liêu A1' ('TL03',N'Tai liêu B1' ('TL05',N'Tai liêu C' ('TL07',N'Tai liêu D2' ('TL09',N'Tai liêu F1' ,'Level 2'),('TL04',N'Tai liêu B2' ,'Level 3'),('TL06',N'Tai liêu D1' ,'Level 4'),('TL08',N'Tai liêu E' ,'Level 6'),('TL10',N'Tai liêu F2' ,'Level 2'), ,'Level 4'), ,'Level 5'), ,'Level 6');
Select * From GIANGDAY
̉
̃ư ̣ Thêm d liêu bang GIANGDAY Insert into GIANGDAY Values ('GV01','L01','2020/06/15'),('GV02','L02','2020/08/14'), ('GV03','L03','2021/04/12'),('GV04','L04','2021/12/02'), ('GV05','L05','2021/12/24'),('GV06','L06','2021/11/11');
Select * From THI
Trang 24/ 37
̉ ̃ư ̣ Thêm d liêu bang THI
Insert into THI Values ('HV01','Level 1',9),('HV01','Level 2',8.5), ('HV02','Level 7',4), ('HV03','Level 3',8.75),('HV03','Level 4',3), ('HV04','Level 1',7.75),('HV04','Level 2',8), ('HV05','Level 3',6),('HV05','Level 4',3.75), ('HV06','Level 7',9.5),('HV06','Level 8',10), ('HV07','Level 5',9), ('HV08','Level 7',8.75), ('HV09','Level 6',8), ('HV10','Level 6',5);
Select * From Account
ữ ệ
ả Thêm d li u b ng Account Insert into Account Values ('giangvien','123','giang_vien'),('nhanvien','234','nhan_vien'), ('hocvien','123','hoc_vien');
ự ệ ệ ấ 5.2. Th c hi n các câu l nh truy v n.
ủ ụ
ọ ọ ạ ấ ế ế t danh sách h c viên,tên h c viên thi l ộ i 1 c p đ nào đó.
ấ
5.2.1. Th t c (Procedure) ủ ụ 1. Vi t 1 th t c cho bi ộ ề ể Đi m <=5 (tham truy n mã c p đ ) Create proc HV_ThiLai @macd char(10) as begin
if (exists (select * from CAPDOKH where macd = @macd)) select TTHocVien.MaHV, TenHV, DiemCD from TTHocVien,THI where TTHocVien.MaCD = THI.MaCD and TTHocVien.MaHV =
Thi.MaHV and thi.MaCD = @macd and Thi.DiemCD<=5
ấ ộ else print N'Không có c p đ này'
end
Trang 25/ 37
exec HV_ThiLai 'Level 4'
exec HV_ThiLai 'Level 15'
ư ứ ộ ả ưở ừ ng t 1,52
2. Đ a ra danh sách gi ng viên có m c đ khen th create proc KT_GV as begin
select giangvien.magv,tengv,mucdokt from giangvien,KHENTHUONG where giangvien.magv=KHENTHUONG.magv and MucdoKT >=1.5 and
mucdokt <=2 end
exec KT_GV
ế ủ ớ ọ t 1 th t c đ a ra danh sách h c viên c a 1 l p nào đó
ủ ụ ư 3. Vi create proc DS_HV @malop char(10) as begin
if(exists (Select * from LOP where malop=@malop)) select mahv, tenhv, gioitinh, lop.malop from HOCVIEN, LOP where lop.malop=@malop and hocvien.MaLop = lop.MaLop
ồ ạ ớ else print N'L p đó không t n t i trong CSDL'
end
Trang 26/ 37
exec DS_HV 'L01'
ớ ộ ế t m t th t c đ a ra danh sách nhân viên v i các thông tin MaNV, TenNV,
ướ ạ ủ ỏ ủ ụ i d ng con tr OUTPUT c a th t c
ủ ụ ư 4. Vi ư SobuoiQL, MaLop.Danh sách đ a ra d Create procedure TTNHANVIEN @dsnv CURSOR VARYING OUTPUT as begin
set @dsnv = CURSOR for select NHANVIEN.MaNV, TenNV, SobuoiQL, LOP.MaLop from NHANVIEN, LOP where NHANVIEN.MaNV = LOP.MaNV
open @dsnv end
declare @mycursor CURSOR exec TTNHANVIEN @dsnv = @mycursor output fetch next from @mycursor while (@@FETCH_STATUS=0) fetch next from @mycursor
Trang 27/ 37
close @mycursor deallocate @mycursor
ọ ế ả ề ủ t 1 hàm tr v dtb c a 1 h c viên nào đó
5.2.2. Hàm (Function) 1. Vi Create function diemtrungbinh (@mahv char(10)) returns real as begin declare @dtb real; select @dtb= avg(DiemCD) From THI, hocvien, capdokh where thi.mahv = hocvien.mahv and thi.macd=capdokh.macd and thi.mahv = @mahv return @dtb end
select dbo.diemtrungbinh ('HV04')
ọ ộ ạ ế ả ề ữ ỏ ủ ấ ạ t m t hàm tr v nh ng h c viên đ t lo i gi ộ ấ i c a c p đ b t kì (dtb>8)
Trang 28/ 37
2.Vi create function hv_gioi (@macd char(10)) returns table as return (select tthocvien.mahv, tenhv, tthocvien.macd, tencd, avg(diemcd) as dtb
from tthocvien,thi where @macd = tthocvien.macd and tthocvien.mahv = thi.mahv and
tthocvien.macd = thi.macd
group by tthocvien.mahv, tenhv, tthocvien.macd, tencd having avg(diemcd) >= 8)
select * from hv_gioi ('level 2')
ộ ế ả ề ệ ủ ấ ng tài li u c a c p đ đó.
ấ ấ
ố ượ ộ ấ t hàm tr v danh sách các c p đ và s l 3.Vi ệ ố ượ ộ ư đ a ra danh sach các c p đ có s l ng tài li u ít nh t create function soluongTL () returns @bang table (macd char(10), sotl int) as begin
insert into @bang select tailieu.macd, count (matl) from tailieu group by tailieu.macd return
end
select macd, sotl from soluongTL() where sotl = (select min(sotl) from soluongTL())
ề ứ ố ổ ằ ớ ổ ỗ ớ ế
t f_hocphi cua hv nào đó v i f_hocphi b ng t ng s t ng ti n ng v i m i ộ
4.Vi ấ c p đ mà hv đó đăng kí */ Create function f_hocphi (@mahv char(10)) returns real as begin
Trang 29/ 37
declare @hocphi real
select @hocphi = sum(tongtien) from HOCPHI, TTHocVien where mahv = @mahv and HOCPHI.MaCD=TTHocVien.macd return @hocphi
end
select dbo.f_hocphi ('HV03')
ở ả ể ọ ậ ọ ọ ự ậ b ng h c viên thì c p nh t h c viên d
ớ ớ t 1 trigger đ thêm 1 h c viên b ng l p(mã l p)
5.2.3. Trigger ế 1.Vi ế ở ả ki n create trigger insert_HV on HocVien For insert as
if(exists(select * from inserted)) begin
update lop set HVDK =hvdk +1 where malop =(select malop from inserted)
end
select * from lop select * from hocvien
́ ̀ Insert into KHOAHOC Values ('K13','toeic 3',N'Cam kêt đâu ra' )
Trang 30/ 37
Insert into HOCVIEN Values ('HV13',N'Hoàng','2011/12/20',N'Nam',2345,'K12','L05')
ậ ể ế ậ
t 1 trigger đ không cho c p nh t mahv 2.vi create trigger NO_update on HOCVIEN for update as begin
if(update(mahv)) begin
ượ ậ ộ ậ c phép c p nh t c t mahv'
ạ print N'b n không đ rollback tran;
end
else
ậ ạ ậ ; print N'b n đã c p nh t thành công'
end
update hocvien set mahv = 'HV14' where tenhv like N'Thúy Lan'
ộ ạ ả
ộ ấ ử ấ ả ằ ả ể ả ử ấ ộ
ớ ử ế ấ ộ
ộ ấ 3.T o Trigger đ đ m b o r ng khi s a m t c p đ trong b ng CAPDOKH thì ộ ướ c khi s a và tên c p đ sau khi tên c p đ sau khi s a ph i khác tên c p đ tr ạ ả ử s a không trùng v i tên các c p đ đã có trong b ng. N u vi ph m thì thông báo i.ỗ l create trigger Update_CapdoKH on CAPDOKH for update as if (((select TenCD from inserted) != (select TenCD from deleted))
and (select count(*) from CAPDOKH where TenCD = (select TenCD
;
Trang 31/ 37
from inserted))<=1) ử print N'S a thành công' else begin
ử ậ
print N'S a không thành công, nh p tên khác' ; rollback tran; end
UPDATE CAPDOKH SET TENCD = N'Start' WHERE MaCD = 'Level 1'
UPDATE CAPDOKH SET TENCD = N'Begin' WHERE MaCD = 'Level 1'
ạ
5.2.4. View 1.T o khung nhìn ViewLHVCD create view TTHocVien as select mahv,tenhv,macd, tencd,lop.malop from hocvien, capdokh, lop where hocvien.MaLop = lop.MaLop and CAPDOKH.MaLop = lop.MaLop
Trang 32/ 37
select * from TTHocVien
ọ ạ
2. T o view thông tin h c viên sau thi Create view TTHV_SAUTHI as select hocvien.mahv, tenhv, capdokh.macd, tencd, dbo.diemtrungbinh(mahv) as dtb from hocvien, capdokh where hocvien.makh = khoahoc.makh
Trang 33/ 37
select * from TTHV_SAUTHI
ạ
3. T o view TailieuGD Create view TailieuGD as select magv, tengv, sdtgv, sobuoiGD, capdokh.macd, tencd, malop,makh, matl, tentl from giangvien, capdokh, tailieu where giangvien.MaCD = CAPDOKH.MaCD and CAPDOKH.MaCD = TAILIEU.MaCD
select * from TailieuGD
ệ ấ ị
5.2.5. Con trỏ ể 1.Hi n th ra hv có đi m tb cao nh t declare max_dtb cursor
Trang 34/ 37
dynamic scroll for select hocvien.mahv, tenhv, dbo.diemtrungbinh(mahv) as maxdtb from hocvien
group by hocvien.mahv, tenhv having dbo.diemtrungbinh(mahv) = (SELECT max(dbo.diemtrungbinh(mahv)) AS maxdtb FROM hocvien) open max_dtb;
declare @mahv char(5) , @tenhv nvarchar (30) , @avgdiemmax float FETCH NEXT FROM max_dtb INTO @mahv,@tenhv,@avgdiemmax ấ PRINT N'Đi m trung bình cao nh t là
ể '+CONVERT(char(4),@avgdiemmax);
WHILE (@@FETCH_STATUS=0)
BEGIN
ữ ể
ể ấ ; PRINT N'Nh ng sinh viên sau có đi m cao nh t: ' PRINT N'Sinh viên '+@tenhv +N' có đi m tb
'+CONVERT(char(4),@avgdiemmax);
FETCH NEXT FROM max_dtb INTO
@mahv,@tenhv,@avgdiemmax END CLOSE max_dtb; DEALLOCATE max_dtb;
ườ ề i dùng
ạ
5.2.6. Phân quy n cho ng ề /* Phân quy n */ T o login sp_addlogin 'giangvien', '123' sp_addlogin 'nhanvien', '234' sp_addlogin 'hocvien', '123'
ạ
T o database user sp_grantdbaccess 'giangvien', 'GiangVien' sp_grantdbaccess 'nhanvien', 'NhanVien' sp_grantdbaccess 'hocvien', 'HocVien'
ấ
ề C p quy n cho role sp_addrole giang_vien grant insert, select, update, delete on THI to giang_vien
Trang 35/ 37
sp_addrole nhan_vien
grant insert, select, update, delete on HOCVIEN to nhan_vien grant insert, select on KHENTHUONG to nhan_vien grant insert, select, update, delete on LOP to nhan_vien
sp_addrole hoc_vien grant select on THI to hoc_vien Thêm user vào role sp_addrolemember 'giang_vien', 'GiangVien' sp_addrolemember 'nhan_vien', 'Nhanvien' sp_addrolemember 'hoc_vien', 'HocVien'
ế ể ớ ớ
5.2.7. Transaction ể 1.Chuy n hv sang l p HV01 sang l p L02 n u L02 mà có hv >20 thì chuy n sang ớ l p khác Begin tran chuyen_hv
declare @x char(15) select @x=malop from HOCVIEN where mahv='HV01' update lop set HVDK=hvdk1 where malop=@x; update hocvien set malop='L02' where mahv='HV01'; update lop set hvdk=hvdk+1 where malop='L02'; if(not exists (select * from lop where malop='L02'))or(not exists (select *
from hocvien where mahv='HV01'))
or((select hvdk from lop where malop='L02')>=20)
begin
ồ ạ ớ ặ ọ ố ượ ặ i l p ho c h c viên ho c đã quá s l ọ ng h c viên
print N'không t n t ớ ; ủ c a 1 l p ' rollback tran
end else commit tran
ề ỏ ệ Th a mãn đi u ki n
Trang 36/ 37
ề ỏ ệ Không th a mãn đi u ki n
VII.
Ệ Ả
https://sites.google.com/view/tlucse486
https://www.sudo.vn/blog/mo
ị ơ ở ữ ệ ế TÀI LI U THAM KH O ả ệ ✔ Giáo trình H qu n tr CSDL : ✔ Mô Hình c s d li u trung tâm ti ng anh:
hinhcosodulieuchotrungtamngoaingu.html
Phân công:
ề ệ ệ ố ỏ SV Hoàng Qu c Hi p: Làm giao di n, phân quy n, con tr , trigger
GIANGVIEN (MaGV, TenGV, SdtGV, SobuoiGD).GIANGVIEN (MaGV, TenGV, SdtGV, SobuoiGD
Trang 37/ 37
ủ ụ ạ ằ ị ị SV Ph m Th Thúy H ng: Làm hàm, th t c, view, giao d ch, I ,II, III