BÀI tập lớn môn hệ điều HÀNH cơ sở dữ LIỆU đề tài xây DỰNG PHẦN mềm QUẢN lý SINH VIÊN

47 9 0
BÀI tập lớn môn hệ điều HÀNH cơ sở dữ LIỆU đề tài xây DỰNG PHẦN mềm QUẢN lý SINH VIÊN

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC THỦY LỢI KHOA CÔNG NGHỆ THÔNG TIN BÀI TẬP LỚN MÔN HỆ ĐIỀU HÀNH CƠ SỞ DỮ LIỆU Đề tài XÂY DỰNG PHẦN MỀM QUẢN LÝ SINH VIÊN Giáo viên hướng dẫn: Sinh viên thực hiện: LÊ HỒNG ÁNH Nguyễn Ngọc Quỳnh Châu VŨ THỊ MƠ HOÀNG NGỌC LAN Lớp 61pm2 NHẬN XÉT CỦA GIẢNG VIÊN MỤC LỤC LỜI NÓI ĐẦU LỜI CẢM ƠN I:MƠ TẢ BÀI TỐN II XÁC ĐỊNH QUY TẮC /RÀNG BUỘC, XÂY DựNG MÔ HÌNH Hực THỂ LIÊN KẾT ER III CHUYỂN TỪ MƠ HÌNH THỰC THỂ LIÊN KẾT SANG MƠ HÌNH QUAN HỆ Mỗi khoa có mã khoa để quản lý ,một tên khoa ghi nhận năm thành lập khoa Mỗi niên khóa có mã đề quản lý ,năm bắt đầu năm kết thuc niên khóa Mỗi lớp có nhiều sinh viên có mã để quản lý,Họ Tên,Ngày Sinh,Giới Tính,Q Qn,Dân Tộc,Email,Số Điện Thoại Mỗi môn học giảng dạy khoa học kì năm Mối mơn cần mã để quản lý,tên mơn ,số tín chỉ.Mỗi kết thi nhận điểm sinh viên làm cho môn học 5 Một lớp có mã lớp để quản lý,Thuộc khoa mở cho khóa học định.Với lớp lưu thông tin : mã Lớp, tên lớp VI:TẠO DATABASE,TẠO BẢNG,THIẾT LẬP CÁC THUỘC TÍNH CHO BẢNG THÊM DỮ LIỆU,TRUY VẤN DỮ LIỆU VÀ PHÂN QUYỀN 11 A:TẠO DATABASE ,TẠO BẢNG VÀ THIẾT LẬP CÁC THUỘC TÍNH CHO BẢNG 11 B: THÊM DỮ LIỆU CHO BẢNG 14 C:THỰC HIỆN CÁC CÂU LỆNH TRUY VẤN VÀ PHÂN QUYỀN 20 LỜI NĨI ĐẦU Ngày nay, tin học có bước tiến nhanh chóng ứng dụng lĩnh vực sống phạm vi toàn giới nói chung Việt Nam nói riêng.Tin học người ta quan tâm nhắc đến nhiều hết phần khơng thể thiếu sống văn minh,góp phần đẩy mạnh cơng cơng nghiệp hố đại hố đất nước, tiến đến kinh tế tri thức Máy vi tính với phần mềm công cụ đắc lực giúp ta quản lý, tổ chức, xếp xử lý cơng việc cách nhanh chóng xác Ở Việt Nam nay, máy tính điện tử đặc biệt máy vi tính nhiều năm qua sử dụng rộng rãi Sự phát triển tin học, công nghệ phần mềm, phần cứng, tải liệu tham khảo đưa bước tiếp cận với công nghệ thông tin lĩnh vực nhằm đáp ứng nhu cầu người Quản lý sinh viên đề tài khơng cịn mẻ với toán quản lý Việc đưa tin học vào ứng dụng để quản lý hữu ích, phải bỏ thời gian mà lại thu hiệu cao, xác tiện lợi nhanh chóng Việc đưa tin học vào ứng dụng để quản lý hữu ích, phải bỏ thời gian mà lại thu hiệu cao, xác tiện lợi nhanh chóng.Trong phạm vi kiểm tra nhóm chúng em đề cập đến vấn đề “Quản lýsinh viên” Với khoảng thời gian không nhiều, vừa phân tích thiết kế, nghiên cứu tìm hiểu khai thác ngơn ngữ mới, vừa thực chương trình khó khăn chúng em Bởi “Quản lý sinh viên” đề tài có nội dung rộng, mặt khác khả am hiểu hệ thống nhóm em cịn nhiều hạn chế thiếu sót Vậy nên e kình mong góp ý , bổ sung để nhóm em hồn thiện cho tập tốt LỜI CẢM ƠN Thời giạn học kỳ trôi qua nháy mắt, em học hỏi nhiều kiến thức chuyên ngành mới, tiếp xúc với nhiều loại kiến thức thực tế, hiểu nguyên tắc trình làm việc học tập nghiên cứu Em xin cảm ơn cô Nguyễn Ngọc Quỳnh Châu đào tạo giảng dạy cẩn trọng em thời gian vừa qua, thái độ làm việc nghiêm túc, tinh thần học tập chuyên nghiệp, đạo đức nhà giáo cao không mệt mỏi có tác động tích cực đến em mang lại lợi ích cho em sống Trong q trình học tập trường, khơng hướng dẫn tận tình trình nghiên cứu mà giúp em cải thiện đáng kể khả nghiên cứu kỹ khác, đồng thời người quan tâm chăm sóc bổ sung kiến thức thiếu cho em, điều làm cho em ngày hoàn thiện Trong giai đoạn khó khăn hướng dẫn tận tình nhiệt tình giúp đỡ em để em mở rộng tầm nhìn nâng cao khả chuyên ngành Tình cảm cao q học tập hình mẫu mà em tôn trọng suốt đời, thời gian vừa qua cô người dạy cho em nhiều kiến thức kỹ thuật mới, điều không cho em đặt mục tiêu cao mà giúp em hiểu nguyên tắc sống, đồng thời giữ tinh thần sống, em tin giúp em nhiều cho cơng việc sau em Từ khâu chọn đề tài đến hoàn thành bước hướng dẫn tận tâm tận tình nhiều cơng sức cô, phong thái cao quý cô, nghiêm khắc, kỷ luật khoan dung với người khác truyền nhiễm sâu sắc cho em, khiến em hiểu nhiều điều đời Em xin bày tỏ lịng kính trọng biết ơn cao đến cơ! I:MƠ TẢ BÀI TỐN => Xây dựng chương trình “Quản lý sinh viên” nhằn hỗ trợ cho việc quản lý khoa,lớp,niên khóa,thơng tin ,điểm môn học sinh viên: -Quản lý khoa Mỗi khoa có mã khoa để quản lý ,một tên khoa ghi nhận năm thành lập khoa -Quản lý lớp Một lớp có mã lớp để quản lý,Thuộc khoa mở cho niên khóa định -Quản lý niên khóa Mỗi niên khóa có mã đề quản lý ,năm bắt đầu năm kết thuc niên khóa -Quản lý Môn Học Mỗi môn học giảng dạy khoa học kì năm -Quản lý thơng tin sinh viên Mỗi sinh viên có mã để quản lý,Họ Tên,Ngày Sinh,Giới Tính,Quê Quán,Dân Tộc,Email,Số Điện Thoại -Quản lý Điểm thi sinh viên môn học Mỗi kết thi nhận điểm sinh viên làm cho môn học theo điểm hệ 10 II XÁC ĐỊNH QUY TẮC /RÀNG BUỘC, XÂY DỰNG MƠ HÌNH HỰC THỂ LIÊN KẾT ER - Bao gồm mô tả ràng buộc sau: Mỗi khoa có mã khoa để quản lý ,một tên khoa ghi nhận năm thành lập khoa Mỗi niên khóa có mã đề quản lý ,năm bắt đầu năm kết thuc niên khóa Mỗi lớp có nhiều sinh viên có mã để quản lý,Họ Tên,Ngày Sinh,Giới Tính,Quê Quán,Dân Tộc,Email,Số Điện Thoại Mỗi môn học giảng dạy khoa học kì năm Mối mơn cần mã để quản lý,tên mơn ,số tín chỉ.Mỗi kết thi nhận điểm sinh viên làm cho môn học theo điểm hệ 10 Một lớp có mã lớp để quản lý,Thuộc khoa mở cho khóa học định.Với lớp lưu thông tin : mã Lớp, tên lớp TruongHoc(MaKhoa, TenKhoa, NamThanhLap,_MaNK,NamBD,NamKT, MaSV,HoTen,NgaySinh,GioiTinh,QueQuan,DanToc,Email,SDT,_ MaMH,TenMH,SoTinChi,MaLpp,TenLop) Các loại thực thể thuộc tính chúng: - Khoa (MaKhoa, TenKhoa, NamThanhLap) - NienKhoa (MaNK,NamBD,NamKT) - SinhVien (MaSV,HoTen,NgaySinh,GioiTinh,QueQuan,DanToc,Email,SDT) - MonHoc (MaMH,TenMH,SoTinChi) - Lop(MaLop,TenLop) III CHUYỂN TỪ MƠ HÌNH THỰC THỂ LIÊN KẾT SANG MƠ HÌNH QUAN HỆ Mỗi khoa có mã khoa để quản lý ,một tên khoa ghi nhận năm thành lập khoa ^ Thực thể :Khoa (MaKhoa, TenKhoa, NamThanhLap) Mỗi niên khóa có mã đề quản lý ,năm bắt đầu năm kết thuc niên khóa ^ Thực thể :NienKhoa (MaNK,NamBD,NamKT) Mỗi lớp có nhiều sinh viên có mã để quản lý,Họ Tên,Ngày Sinh,Giới Tính,Quê Quán,Dân Tộc,Email,Số Điện Thoại ^ Thực thể : SinhVien (MaSV,HoTen,NgaySinh,GioiTinh,QueQuan,DanToc,Email,SDT) Mỗi môn học giảng dạy khoa học kì năm Mối mơn cần mã để quản lý,tên mơn ,số tín chỉ.Mỗi kết thi nhận điểm sinh viên làm cho môn học Thực Thể :MonHoc (MaMH,TenMH,SoTinChi) 5 Một lớp có mã lớp để quản lý,Thuộc khoa mở cho khóa học định.Với lớp lưu thông tin : mã Lớp, tên lớp ^ Thực Thể :Lop(MaLop,TenLop) MaLop TenLop Create Trigger Trig_SV on KetQua for insert as if (( select DiemThi from inserted) is not null) Begin print 'bạn thêm thành công' end Insert into KetQua values ('SV01','MH10',10) 03 % ” ?p Messages b?n dã thêm thành công (1 row affected) Completion time: 2021-11-03T18:53:11.3904025+07:00 103 % - tạo giao dịch chuyển số tín mơn 'Tốn rời rạc' từ thành begin tran MH update MonHoc set SoTinChi=2 where TenMH=N'Toán rời rạc' if(not exists(select * from MonHoc where TenMH=N'Toán rời rạc')) rollback tran MH else commit tran MH print N'chuyển thành cơng' select* from MonHoc lỂ® Messages (1 row affected) chuyển, thành công Completion time: 2021-11-03118:56:23.7815070+07:00 phân quyền tạo login user nqchau anh sp_addlogin 'nqchau', '123456' sp_addlogin 'anh', '123456' tạo role giangvien Cấp quyền cho role giangvien xem,thêm ,sửa ,xóa bảng KetQua sp_addrole giangvien GRANT SELECT,DELETE,INSERT ,UPDATE ON KetQua to giangvien tạo role sinhvien Cấp quyền cho role sinhvien xem bảng KetQua sp_addrole sinhvien grant select on KetQua TO sinhvien Thêm user 'nqchau' vào role 'giangvien',Thêm user 'anh' vào role 'sinhvien' sp_addrolemember 'giangvien', 'nqchau' sp_addrolemember 'sinhvien', 'anh' VŨ THỊ MƠ /* Câu 1: viết thủ tục sp_update_sv có tham số dùng để cập nhật liệu cho sinh viên biết MaSV bảng SinhVien*/ create procedure cau1 @MaSV char(10), @MaLop varchar(30), @HoTen nvarchar(100),@NgaySinh date,@GioiTinh nvarchar(10),@QueQuan nvarchar(50), @DanToc nvarchar(30),@Email nvarchar(20),@SDT float as begin update SinhVien set MaSV=@MaSV , HoTen=@HoTen,NgaySinh=@NgaySinh,GioiTinh=@GioiTinh,QueQuan=@Q ueQuan,DanToc=@DanToc, Email=@Email ,SDT=@SDT where MaSV=@MaSV end exec caul 'SV01','L001',N'Hoàng Ngọc Lan','11/07/2001',N'nữ',N'Hà Nội',N'Kinh','lanhoaiquy@gmail.com',0399612138; select* from SinhVien; 100 % Results gi Messages MaS MaLo V p ị L001 SV01 SV02 L001 Ho Ten Ngay Sinh Hoàng Ngọc Lan 2001-1107 2000-1005 Nguyễn Vãn An GioiTin h nu QueQuan DanTo c Kinh Email SDT Hà Nội m 339612138 nam Hà Nội ẺĐỄ Anguyen @gmail com 999612138 2001-1102 20010301 2001-1102 20010301 2001-0402 20010301 nam Hà Nội kinh Bvan@gmail.com 989612138 nam nu Kinh kinh Choang @gmail com Bthia@gmail com 979612138 588612138 nam Hà Nội Hài Phòng Hà Nội Kinh hoangb@gmail com 979612138 nu nam Hà Nam Hà Nội kinh Kinh Bthimoc@gmail.com Chongd @gmail com 568612138 979612138 SV03 L001 Nguyễn Văn Bích SV04 SV05 L002 L002 Hồng Văn Châu Nguyền Thị Bào SV06 L003 Lé Vân Diệu SV07 SV08 L0Ũ3 L003 Nguyền Thị Bích Hồng Văn Ch í SV09 L0Ũ4 Nguyền Thị Anh TPCHM kinh Banhs@gmail.com 582612138 SV10 L004 Nguyễn Thị Bào 2001-1102 2001-1102 nu 1 nữ kinh Bdaue @gmail com 588612138 SV11 L0Ữ4 Lé Vãn Diệu 200103-01 nam Hải Phỏng Hà Nội Kinh Choangr@gmail com 979612138 Câu Viết function Với mã sinh viên mã khoa ,kiểm tra xem sinh viên có thuộc khoa không(trả sai) create function kt_check_SV_IN_Khoa ( @masv varchar(10), @makhoa varchar(10) ) returns varchar(5) as begin declare @ketqua varchar(5); if(exists(select *from SinhVien left join Lop ON Lop.MaLop=SinhVien.MaLop left join Khoa on Lop.MaKhoa = Khoa.MaKhoa where SinhVien.MaSV=@masv and Khoa.MaKhoa = @makhoa ) ) set @ketqua='true' else set @ketqua='false' return @ketqua end select dbo kt_check_SV_IN_Khoa ('SV06',N'Công Nghệ Thông Tin') lũũ % Results gí Messages (No column name) íalse Câu 3: viết trigger để ko cho phép cập nhật giá trị cột MaSV create trigger trig_cau3 on SinhVien for update as begin if(update(MaSV)) begin print N'Bạn không đc phép cập nhật cột masv' rollback tran; end else print N'bạn cập nhật thành công'; end select*from SinhVien update SinhVien set QueQuan =N'Hà Nội' where GioiTinh=N'Nam'; 100 % ’ gí Messages bạn cập nhật thành cơng {31 rcnrs azfected) Ccrnpleticn time : 2021-11-Ũ3T18:34:30.4873732 + 0":00 câu 4:tạo view kết thi lấy liệu MaSV ,HoTen,MaMon,Diem, từ bảng SinhVien,MonHoc,KetQua create view KQThi as select SinhVien.MaSV,HoTen,MonHoc.MaMH,TenMH,SoTinChi,DiemThi from SinhVien left join KetQua on SinhVien.MaSV = KetQua.MaSV left join MonHoc on KetQua.MaMH = MonHoc.MaMH select *from KQThi 100 % H Results [^jS Messages MaSV Hoĩen MaMH TenMH SoTìnChi Hồng Ngọc Lan MH01 Hệ qn trị csdl DiemT hi 9.5 SV01 SV01 Hoàng Ngọc Lan MH02 Tốn rời rạc SV01 Hồng Ngọc Lan MHD3 Pháp luật đại cũdng 7.3 SV02 Nguyễn Văn An MH01 Hệ quàn trị csdl 9.5 SV02 Nguyền Văn An MHD4 Tiêng Anh chuyên ngành 7.5 SV03 Nguyễn Văn B ích MH01 Hệ quàn trị csdl SV03 Nguyễn Văn Bích MHO6 Giãi tích hàm biên 3 SV04 Hồng Văn Cháu MHD2 Tốn rời rạc SV04 Hoàng Văn Cháu MHO4 Tiẽng Anh chuyên ngành G 10 SV05 Nguyễn Thị Bảo MHD2 Tốn ràí rạc 11 SV05 Nguyễn Thị Bão MHD4 Tiêng Anh chuyên ngành 12 SV06 Lẽ Văn Diệu MHO1 Hệ quản trị csdl 13 SV06 Lé Văn Diệu MHD2 Toán rời rạc 5.5 14 SV07 Nguyễn Thị Bích MH03 Pháp luật đai cùdng 15 SV07 Nguyễn Thị Bích MHD4 Tiêng Anh chuyên ngành 16 SV08 Hoảng Văn Chí MH01 Hệ quàn trị csdl 9.5 17 SV08 Hồng Văn Chí MH03 Pháp luật đại cùdng 13 SV09 Nguyễn Thị Anh MHD1 Hệ quân trị csdl 19 SV09 Nguyễn Thị Anh MHO4 Tiẽng Anh chuyên ngành 3.5 câu sử dụng cursor để hiển thị danh sách MaSV,HoTen,GioiTinh declare con_tro_SV cursor DYNAMIC SCROLL for select MaSV,HoTen,GioiTinh from SinhVien open con_tro_SV declare @HoTen nvarchar(50), @MaSV varchar(7), @GioiTinh nvarchar(3); FETCH NEXT from con_tro_SV into @MaSV @HoTen @GioiTinh while (@@FETCH_STATUS= 0) begin print @MaSV + ' ' + @HoTen + ' ' + @GioiTinh FETCH NEXT from con_tro_SV into @MaSV @HoTen @GioiTinh end close con_tro_SV ; DeAllocate con_tro_SV; 100 % ’ Messages SV01 Hcàng Ngục Lan nữ SV02 Nguyễn văn An nam SV03 Nguyễn văn SV04 Eỉcàng văn Châu svos Nguyễn Thị SVŨ6 Lê Văn Diện nam SV07 Nguyễn Ihị SV08 SV05 SV10 SV11 SV12 SV13 Nguyễn văn SV14 SV1S SV1£ SV17 SV18 SV19 Nguyễn Thị An nứ 100 Bích Bảo nam nam nữ Bich nữ Eỉcàng Nguyễn Nguyễn LỀ Nguyễn Bích nam Eỉcàng Nguyễn LỄ Nguyễn Hcàng văn Thị rhị Văn vẩn Chỉ Anh Bầc Diệu An nam nu nũ nam nam văn Ihị Văn Thị văn Châu Bão Diệu Bích Chi nam nũ nam nữ nam ’ câu 6: viết giao dịch thực chuyển số tín mơn Hệ quản trị csdl từ thành tín Begin Tran monhoc Update MonHoc set SoTinChi=4 where TenMH =N'Hệ quản trị csdl' IF(not exists (select * from MonHoc where TenMH =N'Hệ quản trị csdl')) Begin print N' Hủy thực chuyển' ROLLBACK TRAN monhoc End ELSE Begin print N'thực chuyển' commit tran monhoc End select * from MonHoc |=]1 Messages :1 row aífected) thực chuyến Ccnipletj.cn tine: 2021-11-03113:õ3:1Ễ.5038418+07:00 100 % ’ Result s Ma gí Messages MH TenMH SoTinChi Ị Hệ quàn trị csdl Ị MHD1 MH 02 MH 03 MH D4 MH 05 MH 06 MH 07 MH OS MH 09 MH 10 - câu :Phân quyền Toán rời rạc Pháp luật đại cuóng Tiêng inh chuyên ngành Trí tuê nhân tạo Giải t ich hàm biền Khoa học xã hội Kinh tế ch inh trị Công nghệ web Mạng máy t inh Tạo login giaovien,có pass :1234 sp_addlogin 'giaovien', '1234' tạo user 'VuMo' sp_grantdbaccess 'giaovien', 'VuMo' với tư cách admin tạo role 'gvien',cấp quyền select,insert,delete,update bảng KetQua cho role sp_addrole 'gvien' GRANT select,insert,delete,update thêm user 'VuMo' vào role 'gvien' ON KetQua to gvien sp_addrolemember 'gvien', 'VuMo' HOÀNG NGỌC LAN I,HÀM a, Viết hàm để trả số sinh viên thi lại môn học (tham số' vào mã mơn) gọi hàm để hiển thị số' sv thi lại môn hệ quản trị csdl Create function Func_cau1 (@MaMon char(5') Returns int as begin declare @SV_thilai int Select @SV_thilai = (Select COUNT MaSV) from KetQua MonHoc where MonHoc.MaMh=@mamon AND KetQua.MaMH=MonHoc.MaMH and DiemThi

Ngày đăng: 06/01/2022, 19:47

Hình ảnh liên quan

III. CHUYỂN TỪ MÔ HÌNH THỰC THỂ LIÊN KẾT SANG MÔ HÌNH QUAN HỆ - BÀI tập lớn môn hệ điều HÀNH cơ sở dữ LIỆU đề tài xây DỰNG PHẦN mềm QUẢN lý SINH VIÊN
III. CHUYỂN TỪ MÔ HÌNH THỰC THỂ LIÊN KẾT SANG MÔ HÌNH QUAN HỆ Xem tại trang 8 của tài liệu.
Bước 2: Thực thể yế uà bảng (Khóa của chủ sẽ thành khóa ngoại) - BÀI tập lớn môn hệ điều HÀNH cơ sở dữ LIỆU đề tài xây DỰNG PHẦN mềm QUẢN lý SINH VIÊN

c.

2: Thực thể yế uà bảng (Khóa của chủ sẽ thành khóa ngoại) Xem tại trang 13 của tài liệu.
Bước 6: Thuộc tính đa trị -> Thành 1 bảng/quan hệ mới - BÀI tập lớn môn hệ điều HÀNH cơ sở dữ LIỆU đề tài xây DỰNG PHẦN mềm QUẢN lý SINH VIÊN

c.

6: Thuộc tính đa trị -> Thành 1 bảng/quan hệ mới Xem tại trang 14 của tài liệu.
-- trigg insert bảng KetQua - BÀI tập lớn môn hệ điều HÀNH cơ sở dữ LIỆU đề tài xây DỰNG PHẦN mềm QUẢN lý SINH VIÊN

trigg.

insert bảng KetQua Xem tại trang 32 của tài liệu.

Tài liệu cùng người dùng

Tài liệu liên quan