You are on page 1of 37

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

TRNG I HC S PHM K THUT HNG YN

KHOA CNG NGH THNG TIN

BI TP CHNG
H QUN TR CSDL SQL SERVER
Trnh o to: Cao ng H o to: Chnh quy

Hng yn, ngy 20 thng 11 nm 2010

Hng Yn 05 nm 2011

Trang 1

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

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 MaPhong TenPhong M t M phng Tn phng lm vic Kiu d liu Varchar nvarchar

Bng tblNhanVien(Nhn vin) tblNhanVien Tn ct MaNV TenNV LCB MaPhong HSL M t M nhn vin Tn nhn vin Lng c bn M phng lm vic H s lng Kiu d liu Varchar Nvarchar Int Varchar Float

Bng tblDuAn(D n)

Hng Yn 05 nm 2011

Trang 2

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

tblDuAn Tn ct MaDA TenDA M t M d n Tn d n Kiu d liu Varchar nvarchar

Bng tblChamCong(Chm cng) tblChamCong Tn ct MaNV MaDA SoGio M t M nhn vin M d n S gi lm trong d n Kiu d liu Varchar Varchar Int

Vit cc cu lnh truy vn thc hin cc yu cu sau: 1. To CSDL c tn ThucHanh 2. 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 MaDA ca bng tblDuAn. 6. To rang buc not null cc ct 7. t gi tr mc nh cho ct LCB l 450000. 8. To quan h 1-n t bng tblPhong sang bng tblNhanVien 9. 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.
Hng Yn 05 nm 2011 Trang 3

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

Bi 2: 1. Cho CSDL gm cc bng sau: Bng SanPham:Lu cc sn phm hin ang c trong ca hng: Tn trng MaSP TenSP LoaiSP HSX HSD Soluong Dongia MaNCC Kiu d liu Nchar Nvarchar Nvarchar Nvarchar Nchar Nchar Nchar Nchar M t M sn phm Tn sn phm Loi sn phm Hng sn xut Hn s dng S lng n gi M NCC

Bng HoaDonNhap:Lu cc sn phm nhp: Tn trng MaHDN MaNCC STT MaSP TenSP Kiu d liu Nchar Nchar Nchar Nchar Nvarchar M t M H nhp M NCC S th t M sn phm Tn sn phm

Hng Yn 05 nm 2011

Trang 4

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

LoaiSP HSX HSD Soluong Dongia Thanhtien Ngaynhap MaNVnhap TongTT

Nvarchar Nvarchar Nchar Nchar Nchar Nvarchar Nchar Nchar Nvarchar

Loi sn phm Hang sn xut Hn s dng S lng n gi Thnh tin Ngy nhp M NV nhp Tng thnh tin

Bng HoaDonXuat:Lu tr cc sn phm bn: Tn trng MaHDX Khachhang STT MaSP TenSP LoaiSP HSX HSD Kiu d liu Nchar Nvarchar Nchar Nchar Nvarchar Nvarchar Nvarchar Nchar M t M H xut Khch hng S th t M sn phm Tn sn phm Loi sn phm Hang sn xut Hn s dng

Hng Yn 05 nm 2011

Trang 5

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

Soluong Dongia Thanhtien Ngayban MaNVban TongTT

Nchar Nchar Nvarchar Nchar Nchar Nvarchar

S lng n gi Thnh tin Ngy bn M NV bn Tng thnh tin

Bng NhaCungCap:lu tr thng tin ca cc nh cung cp: Tn trng STT MaNCC TenNCC Diachi SDT Kiu d liu Nchar Nchar Nvarchar Nvarchar Nchar M t S th t M NCC Tn NCC a ch S in thoi

Bng NhanVien:lu tr thng tin nhn vin trong cng ty: Tn trng STT MaNV TenNV Diachi SDT Kiu d liu Nchar Nchar Nvarchar Nvarchar Nchar M t S th t M nhn vin Tn nhn vin a ch S in thoi

Hng Yn 05 nm 2011

Trang 6

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

SoCMTND NgaySinh Chucvu Tienluong Ngayvaolam

int Datetime Nvarchar Nvarchar Datetime

S CMTND Ngy sinh Chc v Tin lng Ngy vo lm

Vit cc cu lnh truy vn thc hin cc yu cu sau: 1. To CSDL c tn QuanLyMT 2. 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.
Hng Yn 05 nm 2011 Trang 7

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

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.

Hng Yn 05 nm 2011

Trang 8

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

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 MaNV TenNV Gioitinh Diachi Luong MaPhong M t M nhn vin Tn nhn vin Gii tnh a ch Lng M phng Kiu d liu Varchar Nvarchar Nvarchar Nvarchar Float Varchar 10 rng 10 30 4 50

Bng tblPhong(Phng) tblPhong Tn ct Maphong Tenphong M t M phng Tn phng Kiu d liu Varchar Nvarchar rng 10 30

Hng Yn 05 nm 2011

Trang 9

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

Bng tblDuAn(D n) tblDuAn Tn ct MaDA TenDA M t M d n Tn d n Kiu d liu Varchar Nvarchar rng 10 50

Bng tblNhanvien_DuAn(Nhn vin _D n) tblNhanVien_DuAn Tn ct MaDA MaNV M t M d n M nhn vin Kiu d liu Varchar Varchar rng 10 10

Thit t CSDL vi cc thng s sau: 1. To quan h 1-n t bng tblPhong sang bng tblNhanVien 2. To quan h 1-n t bng tblNhanVien_DuAn sang bng tblNhanVien 3. To quan h 1-n t bng tblNhanVien_DuAn sang bng tblDuAn Vit cc cu lnh truy vn thc hin cc yu cu sau: 4. Chn mt s bn ghi vo cc bng CSDL. 5. Cho bit thng tin cc nhn vin ca phng P03. 6. Cho bit nhn vin c m l NV03 ang thc hin bao nhiu d n. 7. Cho bit thng tin ca cc nhn vin tham gia d n DA04.
Hng Yn 05 nm 2011 Trang 10

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

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 NV04 13. 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.
Hng Yn 05 nm 2011 Trang 11

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

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 n t 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,...) c lu 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 1 do 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.

Hng Yn 05 nm 2011

Trang 12

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

Bi 3. Cho CSDL gm cc bng sau: Bng tblSinhvien(Sinh vin) tblSinhvien Tn ct MaSV TenSV Bng Nam Khoa M t M sinh vin Tn sinh vin Nm Khoa Kiu d liu Varchar Nvarchar Int Nvarchar 30 rng 10 30

tblMonHoc(Mn hc) tblMonHoc Tn ct MaMH TenMH SoTC Khoa M t M mn hc Tn mn hc S tn ch Khoa Kiu d liu Varchar Nvarchar Int Nvarchar 30 rng 10 30

Bng tblKhoahoc(Kha hc) tblKhoahoc Tn ct MaKH MaMH Hocky


Hng Yn 05 nm 2011

M t M kha hc M mn hc Hc k

Kiu d liu Varchar Varchar Int


Trang 13

rng 10 10

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

Nam GiaoVien Bng tblKetQua(Kt qu)

Nm Gio vin

int Nvarchar 30

tblKetQua Tn ct MaKH MaSV Diem M t M kha hc M mn hc im Kiu d liu Varchar Varchar float rng 10 10

Vit cc cu lnh truy vn thc hin cc yu cu sau: 1. Hin th thng tin cc sinh vin. 2. Hin th tn cc mn hc v s tn ch 3. Cho bit kt qu hc tp ca sinh vin c m SV08. 4. Cho bit tn sinh vin v cc mn hc m 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.

Hng Yn 05 nm 2011

Trang 14

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

Hng Yn 05 nm 2011

Trang 15

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

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 MaSV HoTen MaLop NgaySinh QueQuan M t M sinh vin H tn sinh vin M lp Ngy sinh Qu qun Kiu d liu Varchar nvarchar Varchar Datetime nvarchar

TblLop Tn ct MaLop Tenlop M t M lp Tn lp Kiu d liu Varchar nvarchar

1. Vit th tc lu tr gip thm mi thng tin v sinh vin, kim tra s tn ti ca m lp, 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.

Hng Yn 05 nm 2011

Trang 16

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

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 MaNV HoTen NgaySinh GioiTinh DiaChi MaDV M t M nhn vin H tn nhn vin Ngy sinh Gii tnh a ch M n v Kiu d liu Varchar Nvarchar Datetime Varchar Nvarchar Varchar

tblDonVi Tn ct MaDV TenDV DiaDiem M t M n v Tn dn v cng tc a im Kiu d liu Varchar nvarchar nvarchar

Hng Yn 05 nm 2011

Trang 17

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

tblDuAn Tn ct MaDA TenDA DiaDiem M t M d n Tn d n a im Kiu d liu Varchar nvarchar nvarchar

tblDonVi_DuAn Tn ct MaDV MaDA M t M n v M d n Kiu d liu Varchar varchar

tblNhanVien_DuAn Tn ct MaNV MaDA SoGio M t M nhn vin M d n S gi tham gia d n Kiu d liu Varchar Varchar 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 nhn vin 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 .
Hng Yn 05 nm 2011 Trang 18

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

3. ng vi mi bng trong CSDL, bn hy vit 4 Stored Procedure ng vi 4 cng vic 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 du ca 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 @n 7. Nhp vo s nguyn @n. In ra tng v s lng cc s chn t 1 n @n Cho 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 in gi 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 c tn nh vy th tr v 0. a vo m d n ch bit a im ca d n , nu khng tm thy d n tng ng th tr v -1.

Hng Yn 05 nm 2011

Trang 19

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

CHNG IV. CON TR Bi 1: Cho CSDL sau: tblSinhVien Tn ct MaSV HoTen DiaChi Lop M t M sinh vin H tn sinh vin a ch Tn lp Kiu d liu Varchar nvarchar nvarchar nvarchar

2. Hin th thng tin sinh vin theo mu sau, s dng bin con tr: MaSV SV01 MaSV SV02 SV01 SV02 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) HoTen Lan HoTen Hi Lan Hi DiaChi H Ni DiaChi Hng Yn ....... H Ni Hng Yn tk5 tk6 Lop tk5 Lop tk6

Hng Yn 05 nm 2011

Trang 20

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

tblNhanVien Tn ct MaNV HoTen NgaySinh GioiTinh DiaChi MaDV M t M nhn vin H tn nhn vin Ngy sinh Gii tnh a ch M n v tblDonVi Tn ct MaDV TenDV DiaDiem M t M n v Tn dn v cng tc a im Kiu d liu Varchar nvarchar nvarchar Kiu d liu Varchar Nvarchar Datetime Varchar Nvarchar Varchar

tblDuAn Tn ct MaDA TenDA DiaDiem M t M d n Tn d n a im Kiu d liu Varchar nvarchar nvarchar

Hng Yn 05 nm 2011

Trang 21

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

tblDonVi_DuAn Tn ct MaDV MaDA M t M n v M d n Kiu d liu Varchar varchar

tblNhanVien_DuAn Tn ct MaNV MaDA SoGio M t M nhn vin M d n S gi tham gia d n Kiu d liu Varchar Varchar int

S dng curson thc hin cc yu cu sau: 1. Ly TenNV, NgaySinh v DiaChi t bng NhanVien ca CSDL v sau ln lt in tn ca cc nhn vin ra mn hnh. 2. B sung thm ct SoLuong (s lng) vo bng DuAn 3. S dng Cursor cp nht s lng ca bng DuAn bng s nhn vin tham gia d n . 4. Thm ct KetQua ( kt qu) vo bng NhanVien_DuAn. 5. S dng Cursor sp xp cc d n theo s lng ngi tham gia, v INSERT kt qu vo bng NhanVien_DuAn

Hng Yn 05 nm 2011

Trang 22

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

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 MaSV HoTen NgaySinh GioiTinh DiaChi MaLop M t M sinh vin H tn sinh vin Ngy sinh Gii tnh a ch M lp Kiu d liu Varchar Nvarchar Datetime Varchar Nvarchar Varchar

tblLop Tn ct MaLop TenLop M Lp Tn lp M t Kiu d liu Varchar nvarchar

Hng Yn 05 nm 2011

Trang 23

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

tblMon Tn ct MaMon TenMon M t M mn hc Tn mn hc Kiu d liu Varchar nvarchar

tblDiemThi Tn ct MaSV MaMon Diem M t M sinh vin M mn hc im mn hc Kiu d liu Varchar varchar 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

Hng Yn 05 nm 2011

Trang 24

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

MaNV HoTen NgaySinh GioiTinh DiaChi MaDV

M nhn vin H tn nhn vin Ngy sinh Gii tnh a ch M n v TblDonVi

Varchar Nvarchar Datetime Varchar Nvarchar Varchar

Tn ct MaDV TenDV DiaDiem

M t M n v Tn dn v cng tc a im

Kiu d liu Varchar nvarchar nvarchar

TblDuAn Tn ct MaDA TenDA DiaDiem M t M d n Tn d n a im Kiu d liu Varchar nvarchar nvarchar

tblDonVi_DuAn Tn ct M t Kiu d liu

Hng Yn 05 nm 2011

Trang 25

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

MaDV MaDA

M n v M d n

Varchar Varchar

tblNhanVien_DuAn Tn ct MaNV MaDA SoGio M t M nhn vin M d n S gi tham gia d n Kiu d liu Varchar Varchar 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 im Hong Kim Gip, 2. Cho bit MaNV, HoTen, NgaySinh, GioiTinh, DiaDiem ca cc nhn vin thuc n v 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 d n c s gi = 30.

Hng Yn 05 nm 2011

Trang 26

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

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 MaNV TenNV Gioitinh Quequan M t M Nhn vin Tn Nhn vin Gii tnh Qu qun Kiu d liu Varchar Nvarchar Nvarchar Nvarchar Varchar rng 10 30 10 30 10

MaPhong M phng

Bng tblPhong(Phng)

Hng Yn 05 nm 2011

Trang 27

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

tblPhong Tn ct MaPhong M t M Phng Kiu d liu Varchar Nvarchar rng 10 30

TenPhong Tn Phng

Bng tblDuAn(D n) tblDuAn Tn ct MaDA TenDA M t M D n Tn d n Kiu d liu Varchar Nvarchar rng 10 50

Bng tblTinhLuong(Tnh Lng) tblTinhLuong Tn ct MaNV MaDA M t M Nhn vin M d n Kiu d liu Varchar Varchar float rng 10 10

LuongDA Lng d n Bng tblNguoiquanly(Ngi qun l)

tblNguoiquanly Tn ct MaNQL M t M Ngi qun l Kiu d liu Varchar rng 10

Hng Yn 05 nm 2011

Trang 28

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

TenNQL Quequan

Tn ngi qun l Qu qun

Nvarchar Nvarchar

30 50

Bng tblNhanVien_DuAn(Nhn vin_ D n) tblNhanvien_DuAn Tn ct MaNV MaDA M t M Nhn vin M d n Kiu d liu Varchar Varchar rng 10 10

Bng tblNguoiquanly(Ngi qun l_D n) tblNguoiQuanLy_DuAn Tn ct MaNQL MaDA M t M ngi qun l M d n Kiu d liu Varchar Varchar rng 10 10

2. ngha ca cc trng Vit tt MaNV TenNV Gioitinh ngha M nhn vin Tn nhn vin Gii tnh

Hng Yn 05 nm 2011

Trang 29

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

Quequan MaPhong TenPhong MaDA TenDA LuongDA MaNQL TenNQL

Qu qun M Phng Tn Phng M d n Tn D n Lng theo d n M ngi qun l 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 NhanVien Bng con NhanVien_DuAn Kiu quan h 1-n

Hng Yn 05 nm 2011

Trang 30

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

DuAn NguoiQuanLy NhanVien Duan Nhanvien

NhanVien_DuAn NguoiQuanLy_DuAn TinhLuong TinhLuong Phong

1-n 1-n 1-1 1-1 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 NV01 NV02 NV03 NV04 TenNV Nguyn Vn An Th Quyn o Vn i Phm Th Tm DiaChi Nam nh Hng Yn Bc Giang H Nam Gioitinh Nam N Nam N Phong K hoch T chc Hnh Chnh Thit k phn mm

Hng Yn 05 nm 2011

Trang 31

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

Bng tblDuAn(D n) MaDA DA01 DA02 DA03 DA04 TenDA Xy dng ng dng bn hng trn web Xy dng ng dng Internet chat M ho v gii m d liu Xy dng phn mm qun l Cn b

Bng tblNguoiQuanLy(Ngi qun l) MaNQL NQL01 NQL02 NQL03 NQL04 TenNQL Ng Hu Tnh Nguyn c Thnh V Th Mai Phm Ngc Hng DiaChi Hng Yn Thi Bnh H Tnh Qung Ninh

Bng tblPhong(Phng) MaPhong P01 P02 P03 P04 TenPhong K hoch T chc Hnh Chnh Thit k phn mm

Hng Yn 05 nm 2011

Trang 32

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

Bng tblNhanVien_DuAn(Nhn Vin_D n) MaNV NV01 NV02 NV03 NV04 MaDA DA02 DA03 DA01 DA04

Bng tblNguoiQuanLy_DuAn(Ngi qun l_D n) MaNQL NQL01 NQL02 NQL03 NQL04 MaDA DA01 DA03 DA04 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 ang tham gia. 3. Vit trigger thit lp rng buc sau: - Nu nhn vin thuc tn phng l Ke hoach th c th tham gia ti a l 4 ti - Nu nhn vin thuc tn phng l Thiet ke phan mem th c th tham gia ti
Hng Yn 05 nm 2011 Trang 33

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

a l 3 ti. - Nu nhn vin thuc tn phng l Hanh Chinh th c th tham gia ti a l 2 ti. - Nu nhn vin thuc tn phng l To chuc th c th tham gia ti a l 5 ti - Cc nhn vin thuc tn phng 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 ngi qun 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 MaNhom TenNhom M t M nhm Tn nhm Kiu d liu Varchar Nvarchar rng 10 30

Bng tblNhanVien(Nhn vin) tblNhanVien Tn ct MaNV TenNV Gioitinh M t M nhm Tn nhm Gii tnh Kiu d liu Varchar Nvarchar Nvarchar rng 10 30 4

Hng Yn 05 nm 2011

Trang 34

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

NgaySinh Diachi

Ngy sinh a ch

Datetime Nvarchar 50

Bng tblDanhMucSach(Danh mc Sch) tblDanhMuc Tn ct MaSach TenSach TacGia MaNhom Dongia M t M Sch Tn Sch Tc gi M nhm n gi Kiu d liu Varchar Nvarchar Nvarchar Varchar float int rng 10 30 30 10

Soluongton S lng tn

Bng tblHoadon(Ha n) tblHoadon Tn ct MaHD NgayBan MaNV M t M ha n Ngy bn M Nhn vin Kiu d liu Varchar Datetime Varchar 10 rng 10

Bng tblChitietHoaDon(Chi tit ha n)

Hng Yn 05 nm 2011

Trang 35

Bi tp chng SQL Server

Bi n

n : L Th Thu Hng

tblChitietHoadon Tn ct MaHD MaSach Soluong M t M ha n M Sch S lng Kiu d liu Varchar Varchar int rng 10 10

2. Thc hin cc yu cu sau: 1. Vit trigger cho thao tc Insert ca bng NHOMSACH. Khi c thao tc chn vo bng nhm sch th a ra mt thng bo l C <n> mu tin c chn. 2. Vit trigger cho thao tc Insert trn bng HOADON. Sau khi c mu tin c chn vo 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 mt hng nh sau: thuc tnh lin quan h gia GIABAN trong CHITIETHOADON v DONGIA trong bng 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 ln hn 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 mt rng buc dng lin b nh sau: Mi lp ch c ti a 10 hc vin. Hy vit 1
Hng Yn 05 nm 2011 Trang 36

Bi tp chng SQL Server

Bi n

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 s ca lp vn cn nh hn SiSIToiDa. - Khi c thao tc thm, xo, sa thng tin trn bng SV th phi cp nht li SiSoThuc 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.

Hng Yn 05 nm 2011

Trang 37

You might also like