báo cáo bài tập lớn :Bài toán quản lý sinh viên kí túc xá trường đại học Công Nghiệp Hà Nội - Pdf 13

Mục lục
I.Bài toán quản lý sinh viên kí túc xá trường đại học Công
Nghiệp Hà Nội
1.Mô tả bài toán…………………………………………………………………2
2.Phân tích bài toán…………………………………………………………… 3
a.Sơ đồ phân cấp chức năng 3
b.Mô hình dữ liệu mức khung cảnh……………………………………………4
c.Mô hình dữ liệu mức đỉnh…………………………………………………….5
d.Mô hình dữ liệu mức dưới đỉnh………………………………………………6
e.Mô hình liên kết thực thể ……………………………………………………10
f.Mô hình dữ liệu quan hệ…………………………………………………… 13
II.Giải quyết bài toán
1.procedure…………………………………………………………………… 13
2.Function……………………………………………………………………….24
3.trigger………………………………………………………………………….26
4.view…………………………………………………………………………….33
1
I.Bài toán quản lý sinh viên kí túc xá trường đại học Công
Nghiệp Hà Nội
1.Mô tả bài toán
Trong thời gian sinh viên sống trong ký túc ban quản lý ký túc cần quản lý
những thông tin sau:
 Khi sinh viên vào sống trong ký túc xá thì mỗi sinh viên sẽ có một hồ sơ sinh
viên bao gồm các thông tin : mã sinh viên, họ tên, phòng, quê …Nếu có sai
sót về thông tin sinh viên thì ban quản lý ký túc sẽ sửa thông tin trên hồ sơ
sinh viên . Khi sinh viên không còn sống trong ký túc xá thì hồ sơ sẽ được
xóa.
 Thông tin về các phòng ở của sinh viên sẽ được cập nhật trên hệ thống . Các
thao tác đối với thông tin phòng gồm có :thêm thông tin phòng, sửa thông tin
phòng nếu thấy sai sót, xóa thông tin phòng .
 Khi sinh viên có nhu cầu mang tài sản riêng vào ký túc như bàn ghế , máy

Báo cáo thống kê
Sửa thông tin tài sản
sinh viên
Xoá thông tin tài sản
sinh viên
Quản lý hồ sơ
sinh vie
Thống kê tiền
điện nước
Thêm hồ sơ
Sửa hồ sơ
Xóa hồ sơ
Thống kê số
lượng sinh viên
Thêm thông tin
phòng
Sửa thông tin
phòng
Xóa thông tin
phòng
Quản lý thông tin
phòng
tin ơp sinh viên
2.Phân tích bài toán
a.Sơ đồ phân cấp chức năng3
b.Mô hình dữ liệu mức khung cảnh
4

KhoaHoc
Khoa
HeDaoTao
The Tai San
MaTheTS
MaSV
TenHD
NgayLap
NguoiLapThe
Tai San
Sinh Vien
MaTS
MaTheTS
TenTS
MauSac
SoLuong
12

f.Mô hình dữ liệu quan hệ
Hoa Don
Nuoc
SoHDN
MaPhong
NgayLapHDN
NgayTTTN
ThangTTTN
SoNuoc
GiaNuoc
NguoiLapHDN
Hoa Don Dien

select loaiphong,tang
from phong
Where @maphong=maphong
end
execute timthongtinphong P124
1.2 Tìm thông tin về tài sản sinh viên theo mã sinh viên
create proc thong_ke_TS_theo_masv
(
@MaSV char(10)=null
)
as
if @MaSV not in ( select MaSV from sinhvien )

PRINT 'Khong Co Thong Tin Ve Sinh vien nay'

else
begin
select
a.hoten,maphong,b.mathets,tenhd,ngaylap,nguoilapthe,c.mats,tents,mausac,soluong
from sinhvien a inner join thetaisan b on a.masv=b.masv inner join
taisansinhvien c on b.mathets=c.mathets
where a.masv=@masv
end
exec thong_ke_TS_theo_masv sv01
1.3 Tìm thông tin về tài sản sinh viên theo mã thẻ tài sản
create proc thong_ke_TS_theo_mathets
(
@mathets char(10)=null
)
as


Begin
Insert Into Phong (
maphong,
loaiphong,
tang
)
values
(
@maphong,
@loaiphong,
@tang
16
)
end
execute themphong 2132,loai2,4
1.5Thêm sinh viên
Create Proc Insert_sv(
@masv char (10),
@hoten nvarchar(30),
@ngaysinh datetime,
@gioitinh bit,
@maphong char (10),
@que nvarchar (30),
@lop nvarchar (30),
@khoahoc nvarchar (50),
@khoa int,
@hedaotao nvarchar (30)
)
As

End
execute insert_sv
v27,'Nguyenthihuong',"02/07/1989",1,p123,namdinh,mt1,cntt,2,daihoc
1.7 Thêm thẻ tài sản
CREATE Proc themthetaisan (
@matheTS char (10),
@masv char (10),
@tenHD nvarchar (10),
@ngaylap datetime ,
@nguoilapthe nvarchar (30)
)
AS
If @mathets in ( select mathets
From thetaisan
)
Print 'the nay da ton tai'
else
if @masv not in (
select masv
from sinhvien
)
PRINT 'Sinh vien khong ton tai'
else
Begin
Insert into Thetaisan
(
matheTS ,
masv ,
tenHD ,
ngaylap ,

IF not exists (select * from phong where maphong=@maphong)
begin
print ' phong nay khong ton tai'
return
end
Begin
Insert into hoadondien
(
Sohdd ,
maphong ,
ngaylaphdd ,
ngaytttd ,
sodien ,
giadien ,
thangttd ,
nguoilaphdd
)
values
19
(
@Sohdd ,
@maphong ,
@ngaylaphdd ,
@ngaytttd ,
@sodien ,
@giadien ,
@thangttd ,
@nguoilaphdd
)
End

maphong ,
ngaylaphdn ,
ngaytttn ,
sonuoc,
gianuoc ,
thangttn ,
nguoilaphdn
)
values
(
@Sohdn ,
@maphong ,
@ngaylaphdn ,
@ngaytttn ,
@sonuoc ,
@gianuoc ,
@thangttn ,
@nguoilaphdn
)
end
execute themhdnuoc hdn04,p220,"02/02/1989","03/02/1989",50,2500,2,'Nguyen thi
Hai'
1.10 Tìm sinh viên theo mã sinh viên
Create Proc tim_sv
(@masv char (10))
as
if @masv not in (select masv
from sinhvien)
begin
print 'khong ton tai sinh vien co ma nay'

declare @kqua int
if @sohdd not in (select sohdd
from hoadondien)
begin
print 'khong ton tai hoa don co ma so nay'
return
end
begin
select maphong,ngaylaphdd,ngaytttd,sodien,giadien,giadien*sodien as tongtien
,nguoilaphdd ,thangttd
from hoadondien
where sohdd=@sohdd
end
exec thongtin_hoadondien 'HDD01'
1.13 Thống kê về tài sản sinh viên
CREATE proc thongke_taisan_theomathe
(@mathets char (10)
)
as
22
if @mathets not in (select mathets from thetaisan where mathets=@mathets)
begin
print 'khong ton tai ma the tai san nay '
return
end
begin
select c.masv,
hoten,maphong,a.tenhd,ngaylap,nguoilapthe,b.Mats,tents,mausac,soluong
from thetaisan a inner join taisansinhvien b on a.mathets = b.mathets
inner join sinhvien c on a.masv =c.masv

delete from hoadonnuoc
where sohdn =@sohdn
exec xoa_hoadonnuoc hdn01
1.18 Xóa thông tin tài sản sinh viên
create proc xoa_taisansv
@mathets char (10)
as
delete from thetaisan
where mathets=@mathets
exec xoa_taisansv tts04
1.19 Cập nhật thông tin phòng
create proc sua_phong(
@maphong char (10),
@tang int
)
As
if @maphong not in (select maphong from phong where maphong =@maphong)

print 'khong ton tai phong nay'
else
begin
update phong
set tang = @tang
where maphong =@maphong
end

exec sua_phong p123 ,3
1.20 Cập nhật giá điện
create proc suagiadien
(

return
end
begin
update sinhvien
set lop = @lop
where masv=@masv
end
exec capnhatthongtinsv sv02,'tienganh'
select * from sinhvien
2.Function
2.1 Hàm tính tổng các loại phòng
CREATE FUNCTION Fn_Tongsophong(@loaiphong NVARCHAR (10)) RETURNS
INT
BEGIN
DECLARE @tongphong INT
SELECT @tongphong = COUNT (Loaiphong)
FROM Phong
WHERE loaiphong = @loaiphong
RETURN ISNULL (@tongphong,0)
END
EXECUTE
DECLARE @tongphong INT
SET @tongphong = dbo.fn_tongsophong('loai I')
25


Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status