06. Bai Tap Chuong SQL Server_CDCQ
-
Upload
lehuong7885 -
Category
Documents
-
view
220 -
download
0
Transcript of 06. Bai Tap Chuong SQL Server_CDCQ
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
1/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 1
TRNG I HC S PHM K THUT HNG YN
KHOA CNG NGH THNG TIN
BI TPCHNGH QUN TR CSDL SQL SERVER
Trnh o to: Cao ng
H o to: Chnh quy
Hng yn, ngy 20 thng 11 nm 2010
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
2/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 2
CHNG I.THIT LP CSDL V RNG BUC TON VN
Bi 1. Cho CSDL gm cc bng sau
Phong ( MaPhong, TenPhong)
NhanVien ( MaNV, TenNV, LCB, MaPhong, HSL)DuAn ( MaDA, TenDA)
ChamCong (MaNV, MaDA, SoGio).
Bng tblPhong(Phng)
tblPhong
Tn ct M t Kiu d liu
MaPhong M phng Varchar
TenPhong Tn phng lm vic nvarchar
Bng tblNhanVien(Nhn vin)
tblNhanVien
Tn ct M t Kiu d liu
MaNV M nhn vin Varchar
TenNV Tn nhn vin Nvarchar
LCB Lng c bn Int
MaPhong M phng lm vic Varchar
HSL H s lng Float
Bng tblDuAn(D n)
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
3/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 3
tblDuAn
Tn ct M t Kiu d liu
MaDA M d n Varchar
TenDA Tn d n nvarchar
Bng tblChamCong(Chm cng)
tblChamCong
Tn ct M t Kiu d liu
MaNV M nhn vin Varchar
MaDA M d n Varchar
SoGio S gi lm trong d n Int
Vit cc cu lnh truy vn thc hin cc yu cu sau:
1. To CSDL c tn ThucHanh2. To ra cc bng c cu trc trn.3. To kha trn ct MaPhong ca bng tblPhong.4. To kha trn ct MaNV ca bng tblNhanVien..5. To kha trn ct MaDAca bng tblDuAn.6. To rang buc not null cc ct7. t gi tr mc nh cho ct LCB l 450000.8. To quan h 1-n t bng tblPhong sang bng tblNhanVien9. To quan h 1-n t bng tblNhanVien v tblDuAn sang bng tblChamCong.10.Thm ct GhiChu ( ghi ch) vo bng tblDuAn.11.Hin th thng tin nhn vin thuc m phng 102.12.Hin thi thng tin ca nhng nhn vin c s gi tham gia d n =30 gi.
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
4/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 4
Bi 2:
1. Cho CSDL gm cc bng sau:
Bng SanPham:Lu cc sn phm hin ang c trong ca hng:
Tn trng Kiu d liu M t
MaSP Nchar M sn phm
TenSP Nvarchar Tn sn phm
LoaiSP Nvarchar Loi sn phm
HSX Nvarchar Hng sn xut
HSD Nchar Hn s dng
Soluong Nchar S lng
Dongia Nchar n gi
MaNCC Nchar M NCC
Bng HoaDonNhap:Lu cc sn phm nhp:
Tn trng Kiu d liu M t
MaHDN Nchar M H nhp
MaNCC Nchar M NCC
STT Nchar S th t
MaSP Nchar M sn phm
TenSP Nvarchar Tn sn phm
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
5/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 5
LoaiSP Nvarchar Loi sn phm
HSX Nvarchar Hang sn xut
HSD Nchar Hn s dng
Soluong Nchar S lng
Dongia Nchar n gi
Thanhtien Nvarchar Thnh tin
Ngaynhap Nchar Ngy nhp
MaNVnhap Nchar M NV nhp
TongTT Nvarchar Tng thnh tin
Bng HoaDonXuat:Lu tr cc sn phm bn:
Tn trng Kiu d liu M t
MaHDX Nchar M H xut
Khachhang Nvarchar Khch hng
STT Nchar S th t
MaSP Nchar M sn phm
TenSP Nvarchar Tn sn phm
LoaiSP Nvarchar Loi sn phm
HSX Nvarchar Hang sn xut
HSD Nchar Hn s dng
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
6/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 6
Soluong Nchar S lng
Dongia Nchar n gi
Thanhtien Nvarchar Thnh tin
Ngayban Nchar Ngy bn
MaNVban Nchar M NV bn
TongTT Nvarchar Tng thnh tin
Bng NhaCungCap:lu tr thng tin ca cc nh cung cp:
Tn trng Kiu d liu M t
STT Nchar S th t
MaNCC Nchar M NCC
TenNCC Nvarchar Tn NCC
Diachi Nvarchar a ch
SDT Nchar S in thoi
Bng NhanVien:lu tr thng tin nhn vin trong cng ty:
Tn trng Kiu d liu M t
STT Nchar S th t
MaNV Nchar M nhn vin
TenNV Nvarchar Tn nhn vin
Diachi Nvarchar a ch
SDT Nchar S in thoi
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
7/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 7
SoCMTND int S CMTND
NgaySinh Datetime Ngy sinh
Chucvu Nvarchar Chc v
Tienluong Nvarchar Tin lng
Ngayvaolam Datetime Ngy vo lm
Vit cc cu lnh truy vn thc hin cc yu cu sau:
1. To CSDL c tn QuanLyMT2. To ra cc bng c cu trc trn.3. To kha trn ct MaSP ca bng SanPham.4. To kha trn ct MaNV ca bng NhanVien.5. To kha trn ct MaNCC ca bng NhaCungCap.6. To kha trn ct MaHDN ca bng HoaDonNhap.7. To kha trn ct MaHDX ca bng HoaDonXuat.8. To rang buc not null cc ct.9. t gi tr mc nh cho ct Tienluong l 650000.10.To rng buc cho ct NgaySinh sao cho tui ca nhn vin >=18.11.To quan h 1-n t bng SanPham sang bng HoaDonNhap, bng HoaDonXuat.12.To quan h 1-n t bng NhaCungCap v SanPham sang bng HoaDonNhap, bng
HoaDonXuat.
13.To quan h 1-n t bng NhaCungCap sang bng SanPham.14.Cho bit tn, a ch ca cc nh cung cp tng ng.15.Da ra danh sch nhn vin c a ch Hi Dng.16.a ra danh sch cc loi sn phm thuc nh cung cp Trn Anh.17.a ra tn v gi mua ca sn phm c gi mua t nht trong kho.18.Tm ra nhng sn phm c gi bn thp hn 1000000.19.Tm ra nhng sn phm c s lng bn nhiu nht.
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
8/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 8
20.Tm ra nhng sn phm c s lng bn c t nht.21.a ra gi bn trung bnh ca tng loi sn phm.22.Hin thi thng tin nh cung cp c s lng hnagf cung ng ln nht.23.Hy b sn phm c m sn phm SP02.
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
9/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 9
CHNG II: CU LNH TRUY VN NNG CAO
Bi 1
To CSDL gm cc bng sau, ch cc ct c gch chn l cc ct kha.
Bng tblNhanvien(Nhn vin)
tblNhanVien
Tn ct M t Kiu d liu rng
MaNV M nhn vin Varchar 10
TenNV Tn nhn vin Nvarchar 30
Gioitinh Gii tnh Nvarchar 4
Diachi a ch Nvarchar 50
Luong Lng Float
MaPhong M phng Varchar 10
Bng tblPhong(Phng)
tblPhong
Tn ct M t Kiu d liu rng
Maphong M phng Varchar 10
Tenphong Tn phng Nvarchar 30
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
10/37
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
11/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 11
8. Cho bit thng tin nhn vin c lng cao nht trong phng P03.9. Cho bit thng tin ca nhn vin khng tham gia d n no.10.Sa thng tin nhn vin c M NV03 thnh Nguyn c Thnh.11.Sa li lng ca nhn vin NV05 thnh 3000000.12.Xa thng tin nhn vin c m l NV0413.Tm cc ti m nhn vin 'NV07' tham gia.14.Cho xem danh sch nhn vin ca phng 'Pht trin phn mm'..15.Cho xem danh sch phng ban v s nhn vin ca mi phng.16.Cho xem danh sch nhn vin c a ch Nam nh.
Bi 2.
Cho c s d liu nh sau:
M t:
1. Bng Nhacungcap lu tr d liu v cc i tc cung cp hng cho cng ty.2. Bng Mathang lu tr d liu v cc mt hng hin c trong cng ty.3. Bng Loaihang phn loi cc mt hng hin c.
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
12/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 12
4. Bng Nhanvien c d liu l thng tin v cc nhn vin lm vic trong cng ty.5. Bng Khachhang c s dng lu gi thng tin v cc khch hng ca cng ty.6. Khch hng t hng cho cng ty thng qua cc n t hng. Thng tin chung v cc
nt hng c lu tr trong bng Dondathang (Mi mt n t hng phi do mt
nhn vin ca cng ty lp v do bng ny c quan h vi bng Nhanvien)
7. Thng tin chi tit ca cc n t hng (t mua mt hng g, s lng, gi c,...) clu tr trong bng Chitietdathang. Bng ny c quan h vi hai bng Dondathang v
Mathang.
Vit cc cu lnh truy vn thc hin cc yu cu sau:
8.
Cho bit danh sch cc i tc cung cp hng cho cng ty.9. M hng, tn hng v s lng ca cc mt hng hin c trong cng ty.10.H tn v a ch v nm bt u lm vic ca cc nhn vin trong cng ty.11.a ch v in thoi ca nh cung cp c tn giao dch VINAMILK l g?12.Cho bit m v tn ca cc mt hng c gi ln hn 100000 v s lng hin c t hn
50
13.Cho bit mi mt hng trong cng ty do ai cung cp.14.Cng ty Vit Tin cung cp nhng mt hng no?15.Loi hng thc phm do nhng cng ty no cung cp v a ch ca cc cng ty l
g?
16.Nhng khch hng no t mua mt hng tn Sa hp ca cng ty?17.n t hng s 1do ai t v do nn vin no lp, thi gian v a im giao hng l
u?
18.Hy cho bit s tin lng m cng ty phi tr cho mi nhn vin l bao nhiu?19.Trong n t hng s 4 t mua nhng mt hng no v s tin m khch hng phi
tr cho mi mt hng l bao nhiu(s tin phi tr c tnh theo cng thc
Soluong*GiaBan.
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
13/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 13
Bi 3. Cho CSDL gm cc bng sau:
Bng tblSinhvien(Sinh vin)
Bng
tblMonHoc(Mn hc)
Bng tblKhoahoc(Kha hc)
tblSinhvienTn ct M t Kiu d liu rng
MaSV M sinh vin Varchar 10
TenSV Tn sinh vin Nvarchar 30
Nam Nm Int
Khoa Khoa Nvarchar 30
tblMonHoc
Tn ct M t Kiu d liu rng
MaMH M mn hc Varchar 10
TenMH Tn mn hc Nvarchar 30
SoTC S tn ch Int
Khoa Khoa Nvarchar 30
tblKhoahoc
Tn ct M t Kiu d liu rng
MaKH M kha hc Varchar 10
MaMH M mn hc Varchar 10
Hocky Hc k Int
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
14/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 14
Bng tblKetQua(Kt qu)
Vit cc cu lnh truy vn thc hin cc yu cu sau:
1. Hin th thng tin cc sinh vin.2. Hin thtn cc mn hc v s tn ch3. Cho bit kt qu hc tp ca sinh vin c m SV08.4. Cho bit tn sinhvin v cc mn hcm sinh vin tham gia vi kt qu cui
kha trn 7.5. Cho bit tn cc sinh vin thuc v Khoa c ph trch mn hc Ton ri rc.6. Cho bit tn sinh vin v im trung bnh ca sinh vin trong tng hc k.7. Cho bit tn sinh vin t im cao nht.8. Cho bit thng tin Sinh vin tham gia cc mn hc.
Nam Nm int
GiaoVien Gio vin Nvarchar 30
tblKetQua
Tn ct M t Kiu d liu rng
MaKH M kha hc Varchar 10
MaSV M mn hc Varchar 10
Diem im float
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
15/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 15
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
16/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 16
CHNG III: TH TC LU TR TH TC LU TR
Bi 1:
Cho CSDL: SinhVien ( MaSV, HoTen, MaLop, NgaySinh, QueQuan)
Lop ( MaLop, TenLop)
TblSinhVien
Tn ct M t Kiu d liu
MaSV M sinh vin Varchar
HoTen H tn sinh vin nvarchar
MaLop M lp Varchar
NgaySinh Ngy sinh Datetime
QueQuan Qu qun nvarchar
TblLop
Tn ct M t Kiu d liu
MaLop M lp Varchar
Tenlop Tn lp nvarchar
1. Vit th tc lu tr gip thm mi thng tin v sinh vin, kim tra s tn ti ca mlp, nu m lp tn ti th cho php chn, nu khng th khng c php.
2.Ly m sinh vin v tn sinh vin t bng sinh vin sau ln lt in tn v m ca cc
sinh vin ra mn hnh.
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
17/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 17
Bi 2:
Cho CSDL sau:
- NhanVien ( MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, MaDV)- DonVi ( MaDV, TenDV, DiaDiem)- DuAn ( MaDA, TenDA, DiaDiem)- DonVi_DuAn ( MaDV, MaDA)- NhanVien_DuAn ( MaNV, MaDA, SoGio)
tblNhanVien
Tn ct M t Kiu d liu
MaNV M nhn vin Varchar
HoTen H tn nhn vin Nvarchar
NgaySinh Ngy sinh Datetime
GioiTinh Gii tnh Varchar
DiaChi a ch Nvarchar
MaDV M n v Varchar
tblDonVi
Tn ct M t Kiu d liu
MaDV M n v Varchar
TenDV Tn dn v cng tc nvarchar
DiaDiem a im nvarchar
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
18/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 18
tblDuAn
Tn ct M t Kiu d liu
MaDA M d n Varchar
TenDA Tn d n nvarchar
DiaDiem a im nvarchar
tblDonVi_DuAn
Tn ct M t Kiu d liu
MaDV M n v Varchar
MaDA M d n varchar
tblNhanVien_DuAn
Tn ct M t Kiu d liu
MaNV M nhn vin Varchar
MaDA M d n Varchar
SoGio S gi tham gia d n int
Vit cc th tc thc hin cc yu cu sau:
1. Vit th tc lu tr c tham s l mt xu k t, th tc ny tr v s lng cc nhnvin tham gia d n c m bng tham s ca th tc.
2. Hy b xung thm ct SoLuong (s lng) vo bng d n v vit th tc lu tr cp nht s lng ca bng DuAn bng s nhn vin tham gia d n .
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
19/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 19
3. ng vi mi bng trong CSDL, bn hy vit 4 Stored Procedure ng vi 4 cngvic Insert/Update/Delete/Select. Trong Stored Procedure Update v Delete ly
kha chnh lm tham s.
4. In ra dng Xin cho + @ten vi @ten l tham s u vo l tn Ting Vit c duca nhn vin no .
5. Nhp vo s nguyn @n. In ra cc s t 1 n @n.6. Nhp vo s nguyn @n. In ra tng cc s chn t 1 n @n7. Nhp vo s nguyn @n. In ra tng v s lng cc s chn t 1 n @nCho thc thi v in gi tr ca cc tham s ny kim tra.
Bi 3.
1.Vit th tc lu tr tnh n!
2. Vit store procedure in ra dng 'Xin Cho + @ten' vi @ten l tham s l tn ca bn.
Bi 4.
Nhp vo 2 s @s1,@s2. Xut min v max ca chng ra tham so @max.Cho thc thi v
in gi tr ca cc tham s ny kim tra.
Nhp vo 2 s @s1,@s2. Xut tng @s1+@s2 ra tham s @tong.. Cho thc thi v ingi tr ca tham s ny kim tra.
Bi 5
Cho CSDL gm cc bng sau:
- NhanVien ( MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, MaDV)- DonVi ( MaDV, TenDV, DiaDiem)- DuAn ( MaDA, TenDA, DiaDiem)- DonVi_DuAn ( MaDV, MaDA)- NhanVien_DuAn ( MaNV, MaDA, SoGio)
a vo tn nhn vin tr v s nhn vin c cng tn, nu khng c nhn vin no ctn nh vy th tr v 0.
a vo m d n ch bit a im ca d n , nu khng tm thy d n tngng th tr v -1.
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
20/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 20
CHNG IV. CON TR
Bi 1:
Cho CSDL sau:
tblSinhVien
Tn ct M t Kiu d liu
MaSV M sinh vin Varchar
HoTen H tn sinh vin nvarchar
DiaChi a ch nvarchar
Lop Tn lp nvarchar
2. Hin th thng tin sinh vin theo mu sau, s dng bin con tr:
MaSV HoTen DiaChi Lop
SV01 Lan H Ni tk5
MaSV HoTen DiaChi Lop
SV02 Hi Hng Yn tk6
. . . . . . .
SV01 Lan H Ni tk5
SV02 Hi Hng Yn tk6
Bi 2:
1. Cho CSDL sau:
- NhanVien ( MaNV, HoTen, NgaySinh, GioiTinh, Luong, DiaChi, MaDV)-
DonVi ( MaDV, TenDV, DiaDiem)- DuAn ( MaDA, TenDA, DiaDiem)- DonVi_DuAn ( MaDV, MaDA)- NhanVien_DuAn ( MaNV, MaDA, SoGio)
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
21/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 21
tblNhanVien
Tn ct M t Kiu d liu
MaNV M nhn vin Varchar
HoTen H tn nhn vin Nvarchar
NgaySinh Ngy sinh Datetime
GioiTinh Gii tnh Varchar
DiaChi a ch Nvarchar
MaDV M n v Varchar
tblDonVi
Tn ct M t Kiu d liu
MaDV M n v Varchar
TenDV Tn dn v cng tc nvarchar
DiaDiem a im nvarchar
tblDuAn
Tn ct M t Kiu d liu
MaDA M d n Varchar
TenDA Tn d n nvarchar
DiaDiem a im nvarchar
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
22/37
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
23/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 23
CHNG V. KHUNG NHN VIEW
Bi 1
1. Cho CSDL sau:
SinhVien ( MaSV, TenSV, NgaySinh, GioiTinh, DiaChi, MaLop)
Lop ( MaLop, TenLop)
Mon ( MaMon, TenMon)
DiemThi (MaSV, MaMon, Diem)
tblSinhVien
Tn ct M t Kiu d liu
MaSV M sinh vin Varchar
HoTen H tn sinh vin Nvarchar
NgaySinh Ngy sinh Datetime
GioiTinh Gii tnh Varchar
DiaChi a ch Nvarchar
MaLop M lp Varchar
tblLop
Tn ct M t Kiu d liu
MaLop M Lp Varchar
TenLop Tn lp nvarchar
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
24/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 24
tblMon
Tn ct M t Kiu d liu
MaMon M mn hc Varchar
TenMon Tn mn hc nvarchar
tblDiemThi
Tn ct M t Kiu d liu
MaSV M sinh vin Varchar
MaMon M mn hc varchar
Diem im mn hc float
2. To khung nhn View thc hin cc yu cu sau:
- Hin th thng tin sinh vin m im trung bnh ln 1 l max- To view ly thng tin t 2 bng SinhVien v Lop
Bi 2:
Cho CSDL sau:
- NhanVien ( MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, MaDV)- DonVi ( MaDV, TenDV, DiaDiem)- DuAn ( MaDA, TenDA, DiaDiem)- DonVi_DuAn ( MaDV, MaDA)- NhanVien_DuAn ( MaNV, MaDA, SoGio)
tblNhanVien
Tn ct M t Kiu d liu
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
25/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 25
MaNV M nhn vin Varchar
HoTen H tn nhn vin Nvarchar
NgaySinh Ngy sinh Datetime
GioiTinh Gii tnh Varchar
DiaChi a ch Nvarchar
MaDV M n v Varchar
TblDonVi
Tn ct M t Kiu d liu
MaDV M n v Varchar
TenDV Tn dn v cng tc nvarchar
DiaDiem a im nvarchar
TblDuAn
Tn ct M t Kiu d liu
MaDA M d n Varchar
TenDA Tn d n nvarchar
DiaDiem a im nvarchar
tblDonVi_DuAn
Tn ct M t Kiu d liu
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
26/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 26
MaDV M n v Varchar
MaDA M d n Varchar
tblNhanVien_DuAn
Tn ct M t Kiu d liu
MaNV M nhn vin Varchar
MaDA M d n Varchar
SoGio S gi tham gia d n Int
To khung nhn View thc hin cc yu cu sau:
1. Hin th tn nhn vin, ngy sinh ca nhng nhn vin c d n nm a imHong Kim Gip,
2. Cho bit MaNV, HoTen, NgaySinh, GioiTinh, DiaDiem ca cc nhn vin thuc nv Kinh doanh c d n l qun l mt hng,
3. Hin th MaDA, TenDA c s nhn vin tham gia ng nht.4. Hin th danh sch nhn vin c tn trong d n pht trin phn mm.5. Cho bit danh sch nhn vin tham gia tt c cc d n ca cng ty.6. Cho bit tn ca cc d n khng c nhn vin no tham gia.7. ng vi mi d n cho bit s lng nhn vin tham gia d n .8. ng vi mi nhn vin cho bit tn ca cc d n ang tham gia.9. Cho bit tn ca cc d n c s lng nhn vin tham gia >=5.10.Hin th thng tin nhn vin tham gia cc dn c s gi = 30.
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
27/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 27
CHNG VI: TRIGGER
Bi 1.
1. Cho CSDL nh sau:
SinhVien(MaSV,Hoten,DTB)
BangDiem(MaSV,MaMH,Diem)
2. Vit trigger mi khi xut hin thao tc cp nht(thm,xa,sa) trn table bang_diem
th in trung bnh (dtb)trong table sinh_vien s c cp nht li.gi s khng quan tm
n h s ca mn hc v vic thi li
Bi 2.
1. Cho CSDL gm cc bng sau:
Bng tblNhanvien(Nhn vin)
tblNhanVien
Tn ct M t Kiu d liu rng
MaNV M Nhn vin Varchar 10
TenNV Tn Nhn vin Nvarchar 30
Gioitinh Gii tnh Nvarchar 10
Quequan Qu qun Nvarchar 30
MaPhong M phng Varchar 10
Bng tblPhong(Phng)
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
28/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 28
tblPhong
Tn ct M t Kiu d liu rng
MaPhong M Phng Varchar 10
TenPhong Tn Phng Nvarchar 30
Bng tblDuAn(D n)
tblDuAn
Tn ct M t Kiu d liu rng
MaDA M D n Varchar 10
TenDA Tn d n Nvarchar 50
Bng tblTinhLuong(Tnh Lng)
tblTinhLuong
Tn ct M t Kiu d liu rng
MaNV M Nhn vin Varchar 10
MaDA M d n Varchar 10
LuongDA Lng d n float
Bng tblNguoiquanly(Ngi qun l)
tblNguoiquanly
Tn ct M t Kiu d liu rng
MaNQL M Ngi qun l Varchar 10
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
29/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 29
TenNQL Tn ngi qun l Nvarchar 30
Quequan Qu qun Nvarchar 50
Bng tblNhanVien_DuAn(Nhn vin_ D n)
tblNhanvien_DuAn
Tn ct M t Kiu d liu rng
MaNV M Nhn vin Varchar 10
MaDA M d n Varchar 10
Bng tblNguoiquanly(Ngi qun l_D n)
tblNguoiQuanLy_DuAn
Tn ct M t Kiu d liu rng
MaNQL M ngi qun l Varchar 10
MaDA M d n Varchar 10
2. ngha ca cc trng
Vit tt ngha
MaNV M nhn vin
TenNV Tn nhn vin
Gioitinh Gii tnh
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
30/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 30
Quequan Qu qun
MaPhong M Phng
TenPhong Tn Phng
MaDA M d n
TenDA Tn D n
LuongDA Lng theo d n
MaNQL M ngi qun l
TenNQL Tn ngi qun l
3. ngha ca cc bng
-NhanVien: Bng lu danh sch nhn vin
- Phong: bng lu danh sch cc phng
- DuAn: Bng lu danh sch cc d n
- TinhLuong: Bng lu danh kt qu lng ca nhn vin theo cc ti m nhn vin
tham gia.
-NguoiQuanLy: Lu danh mc cc nh qun l
-Nhanvien_Duan: Lu cc d n m Nhn vin thc hin
-NguoiQuanLy_Duan: Lu cc d n m ngi qun l hng dn
4. Cc quan h
Bng cha Bng con Kiu quan h
NhanVien NhanVien_DuAn 1-n
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
31/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 31
DuAn NhanVien_DuAn 1-n
NguoiQuanLy NguoiQuanLy_DuAn 1-n
NhanVien TinhLuong 1-1
Duan TinhLuong 1-1
Nhanvien Phong 1-1
5. ngha ca cc quan h
- Mt nhn vin c th khng tham gia hoc tham gia nhiu d n khc nhau.
- Mt ngi qun l c th khng hng dn hoc hng dn nhiu d n.
- Mi nhn vin lm d n c mt lng ring bit ty vo d n m nhn vin thc
hin.
- Mi nhn vin ch c trong mt phng.
6. D liu mu:
Bng tblNhanVien (Nhn vin)
MaNV TenNV DiaChi Gioitinh Phong
NV01 Nguyn Vn An Nam nh Nam K hoch
NV02 Th Quyn Hng Yn N T chc
NV03 o Vn i Bc Giang Nam Hnh Chnh
NV04 Phm Th Tm H Nam N Thit k phn mm
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
32/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 32
Bng tblDuAn(D n)
MaDA TenDA
DA01 Xy dng ng dng bn hng trn web
DA02 Xy dng ng dng Internet chat
DA03 M ho v gii m d liu
DA04 Xy dng phn mm qun l Cn b
Bng tblNguoiQuanLy(Ngi qun l)
MaNQL TenNQL DiaChi
NQL01 Ng Hu Tnh Hng Yn
NQL02 Nguyn c Thnh Thi Bnh
NQL03 V Th Mai H Tnh
NQL04 PhmNgc Hng Qung Ninh
Bng tblPhong(Phng)
MaPhong TenPhong
P01 K hoch
P02 T chc
P03 Hnh Chnh
P04 Thit k phn mm
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
33/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 33
Bng tblNhanVien_DuAn(Nhn Vin_D n)
MaNV MaDA
NV01 DA02
NV02 DA03
NV03 DA01
NV04 DA04
Bng tblNguoiQuanLy_DuAn(Ngi qun l_D n)
MaNQL MaDA
NQL01 DA01
NQL02 DA03
NQL03 DA04
NQL04 DA02
7. Yu cu:
1. Vit trigger khng cho php xo M phng khi vn ang c nhn vin thuc
phng .
2.Vit trigger khi xo mt nhn vin th xo tt c cc d n m nhn vin angtham gia.
3.Vit trigger thit lp rng buc sau:-Nu nhn vin thuc tnphng l Ke hoach th c th tham gia ti a l 4
ti
-Nu nhn vin thuc tnphng l Thiet ke phan mem th c th tham gia ti
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
34/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 34
a l 3 ti.
-Nu nhn vin thuc tnphng l Hanh Chinh th c th tham gia ti a l 2
ti.
-Nu nhn vin thuc tnphng l To chuc th c th tham gia ti a l 5 ti
- Cc nhn vin thuc tnphng khc cc phng k trn th khng c tham gia thc
hin d n no.
4.Vit trigger khi thay i m ngi qun l th thay i cc thng tin m ngiqun l trong cc bng lin quan.
5. To trigger mt d n c khng qu 3 nhn vin tham gia.Bi 3.
Cho CSDL sau:
Bng tblNhomSach(Nhm Sch)
tblNhomSach
Tn ct M t Kiu d liu rng
MaNhom M nhm Varchar 10
TenNhom Tn nhm Nvarchar 30
Bng tblNhanVien(Nhn vin)
tblNhanVien
Tn ct M t Kiu d liu rng
MaNV M nhm Varchar 10
TenNV Tn nhm Nvarchar 30
Gioitinh Gii tnh Nvarchar 4
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
35/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 35
NgaySinh Ngy sinh Datetime
Diachi a ch Nvarchar 50
Bng tblDanhMucSach(Danh mc Sch)
tblDanhMuc
Tn ct M t Kiu d liu rng
MaSach M Sch Varchar 10
TenSach Tn Sch Nvarchar 30
TacGia Tc gi Nvarchar 30
MaNhom M nhm Varchar 10
Dongia n gi float
Soluongton S lng tn int
Bng tblHoadon(Ha n)
tblHoadon
Tn ct M t Kiu d liu rng
MaHD M ha n Varchar 10
NgayBan Ngy bn Datetime
MaNV M Nhn vin Varchar 10
Bng tblChitietHoaDon(Chi tit ha n)
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
36/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
Hng Yn 05 nm 2011 Trang 36
tblChitietHoadon
Tn ct M t Kiu d liu rng
MaHD M ha n Varchar 10
MaSach M Sch Varchar 10
Soluong S lng int
2. Thc hin cc yu cu sau:
1. Vit trigger cho thao tc Insert ca bng NHOMSACH. Khi c thao tc chnvo bng nhm sch th a ra mt thng bo l C mu tin c chn.
2. Vit trigger cho thao tc Insert trn bng HOADON. Sau khi c mu tin c chnvo bng HOADON th mu tin cng c chn vo bng HOADON_Luu.
Lu : nu cha c bng HOADON_Luu th to HOADON_Luu (c cu trc hon
ton ging nh bng HOADON) trc khi kim chng trigger.
3. Vit trigger cho thao tc Insert, Update, Delete trn bng CHITIETHOADON.Khi c mu tin c chn vo hoc hiu chnh hoc xo th cp nht li ct
TongTriGia trong bng HOADON vi TongTriGia = Tng tin ca S lng *
n gi. Lu : nu bng HOADON cha c ct TongTriGia th b sung vo trc
khi kim chng trigger.
4. Vit trigger cho thao tc Insert, Update kim tra rng buc lin thuc tnhlin quan h gia GIABAN trong CHITIETHOADON v DONGIA trong bng
mt hng nh sau: GIABAN trong CHITIETHOADON lun lun bng
DONGIA trong DANHMUCSACH, nu vi phm th thng bo v khng cho
php Insert hay Update.
5. C rng buc lin thuc tnh l ngy bn ca mt HOADON th lun lun lnhn hay bng ngy lp ha n . Hy bt rng buc trn khi cn thit.
6. Gi s c 2 bng LOP(Malop, TenLop), SV(Masv, HoTen, Malop), vi mtrng buc dng lin b nh sau: Mi lp ch c ti a 10 hc vin. Hy vit 1
-
8/6/2019 06. Bai Tap Chuong SQL Server_CDCQ
37/37
Bi tp chngSQL Server Bin n: L Th Thu Hng
trigger kim tra rng buc , nu vi phm rng buc th sinh ra mt m li
v a ra thng bo Lp ny hc vin.
7. Gi s c 2 bng LOP(Malop, TenLop, SiSoToida, SiSoThuc), SV(Masv, HoTen,Malop), vi cc rng buc dng lin b lin quan h nh sau:
- Ch chn thm hoc hiu chnh chuyn lp cho mt sinh vin ca bng SV khi s sca lp vn cn nh hn SiSIToiDa.
- Khi c thao tc thm, xo, sa thng tin trn bng SV th phi cp nht liSiSoThuc
8. Hy bt cc rng buc trn v sinh ra m li thch hp khi c cc thao tc
tng ng xut hin m vi phm rng buc t ra.
9. Gi s c bng theo di qu trnh tng lng ca nhn vin nh sau
QuaTrinhTangLuong(MANV, NGAYTANG, MUCLUONG)
Bit rng mc lng ca nhn vin ch tng ln theo thi gian. Hy vit trigger
p tha iu kin ny.