sql 2005 2 practice books - bachkhoaaptech com
TRANSCRIPT
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
1/20
Bi tp SQL 2005 2
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
Trung tm o to Lp trnh vin Quc t AiTi-Aptech Page 1 of 20
35/115 Ph nh Cng Hong Mai
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
2/20
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
3/20
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
Li gii thiu
Sch bi tp do tp th gio vin AiTi-Aptech thit k v c s dng nh mt phn khng th
tch ri khi gio trnh ang hc ca Aptech n vi cc hc vin ang theo hc ti Trung tm.
Tp sch bi tp ny l ti liu lu hnh ni b, ch dnh cho cc hc vin theo hc ti Trung tm
o to Lp trnh vin Quc t AiTi-Aptech. Mi hnh thc sao chp li ni dung ca sch l vi phm
bn quyn v khng tun th Lut S hu tr tu ca Nh nc Vit Nam.
AiTi-Aptech lun mong mi to dng mt mi trng hc tp tt cho cc bn hc vin theo hc ti
trung tm. Mi kin ng gp v xy dng Sch bi tp, ci tin h thng xin gi mail v
[email protected] hoc ng dy nng (04) 6 64 8848. Chng ti s ghi nhn v ci
tin c th cung cp cho cc bn mt mi trng hc tp ngy mt tt hn.
S nghip tng lai ca cc bn l thnh cng ca chng ti
i thit k Sch bi tp
Vit Nam lun thiu Lp trnh vin ng cp Quc t
Trung tm o to Lp trnh vin Quc t AiTi-Aptech Page 3 of 20
35/115 Ph nh Cng Hong Mai
mailto:[email protected]:[email protected] -
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
4/20
ContentsBi th c hnh SQLDO - Qu n l i m ....................................................................................................................3
Bi th c hnh SQLSDO - Qu n l bn hng .............................................................................................................7
Bi t p th c hnh SQLSDO - Qu n l bn sch .......................................................................................................10
Bi thc hnh SQLDO - Qun l im
Cc bng trong csdl QLDIEM c cu trc nh sau:
S quan h (relationship) dng n gin:
S quan h cng cu trc chi tit cc bng:
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
5/20
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
S liu mu trong bng Class:
S liu mu trong bng Subject:
Trung tm o to Lp trnh vin Quc t AiTi-Aptech Page 5 of 20
35/115 Ph nh Cng Hong Mai
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
6/20
S liu mu trong bng Student:
S liu mu trong bng Mark:
Ghi ch: Trong bng Class cha thng tin v cc lp d nh m v nh vy thng tin v lp c nhptrc khi lp nhn sinh vin. V vy c trng hp tuy lp ng k, nhng do v mt l do no m
lp khng khai ging th thng tin v lp vn cn trong bng Class nhng trong bng Student li khngc.
Ngoi cc bng trn, hy to thm bng testXML c cha ct Address c kiu XML, s c dng th cho cc lnh lin quan n kiu d liu ny nh index, view
Bng testXML c cu trc nh sau:
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
7/20
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
BI 1
Cu 1:
1. To cc bng trn y (lu l trong bng Class khng c ct Stud_no).2. Nhp mt s bn ghi cho cc bng trn.
Cu hi 2:
Vit cc lnh T-SQL thc hin cc cng vic sau:
1. t foreign key constraint cho ct ClassCode trong bng Student.
2. To cc loi index mt cch thch hp v theo di tc ng ca cc lnh ny khi thc hin cc lnhtruy vn (select).
3 Hin th khng lp li tn ca sinh vin c mt phn a ch email l fpt.vn hoc "fpt.com.vn"
4. Hin th nhng lp c ngy kt thc l 23/7/2006 m khng c sinh vin no.5. Loi b cc bn ghi t cc bng CLASS, STUDENT v MARK ca cc lp c ngy kt thc trc
1/1/2005.
6. Hin th ClassCode, RollNo, FullName v tng s sinh vin vi mi lp. Hin th tng s sinh vincho tt c cc lp.
7. To view viewClass1 cha danh sch lp i vi cc lp c hn 17 sinh vin.
8. Hin th SubjectCode (m mn hc) , SubjectName (tn mn hc) v s sinh vin thi mn vis sinh vin tham gia ng nht.
Cu hi 3:
To trigger c tn l TrigDelClass cho thao tc xa lp trn bng CLASS.
Trc khi xa th m lp, tn gio vin ch nhim v ngy xa c lu vo bng CLASS_HIST. ngthi xa cc bn ghi lin quan trong cc bng STUDENT v MARK.
Cu trc ca bng CLASS_HIST
Ct M t
ClassCodeHeadTeacherDelDate
M lpTn gio vin ch nhimNgy xa lp
Trung tm o to Lp trnh vin Quc t AiTi-Aptech Page 7 of 20
35/115 Ph nh Cng Hong Mai
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
8/20
BI 2
Cu 1: To bng v nhp d liu
1. Vit cc cu SQL to bng c cc kho chnh v kho ngoi theo lc v m t trn.
2. Vit cc cu SQL nhp y v chnh xc nhng d liu theo m t trn vo cc bng va to.(Lu th t nhp d liu).
Cu 2: Vit cc cu truy vn d liu (query)
1. Vit cu lnh SQL cho kt qu l s sinh vin c im thi mn CF.2. Vit cu lnh SQL cho kt qu l danh sch cc mn hc cng vi s sinh vin c im thi tng
ng ca tng mn hc, theo th t tng dn ca tn mn hc.
3. Vit cu lnh SQL cho kt qu l danh sch cc sinh vin qu "HT" (H Ty), cng vi tn ccmn hc thi nhng khng qua (< 10 im).
4. Vit cu lnh SQL cho kt qu l danh sch cc lp hc, cng vi tng s sinh vin trong lp.
5. Vit cu lnh SQL cho kt qu l danh sch cc sinh vin, cng vi tn y cc mn hc m sinhvin tham gia thi.
6. Vit cu lnh SQL cho kt qu l danh sch cc sinh vin, cng vi s ln tham gia thi thc hnh(mi record trong bng MARK c im PMark l mt ln thi).
7. Vit cu lnh SQL cho kt qu l danh sch cc tnh, cng vi im trung bnh tt c cc mn thi casinh vin qu tnh . Sp xp theo th t gim dn ca im trung bnh.
8. Vit lnh SQL cho kt qu l danh sch cc sinh vin c im trung bnh tt c cc mn hc >15.
Cu 3: Vit Stored ProcedureVit mt script to stored procedure vi cc yu cu sau:
- Tn Procedure: procStudentList
- Thng s: pClassCode as varchar(10), pMark as float
- X l:
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
9/20
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
+ Nu thng s pClassCode c truyn = '' hoc khng truyn, procedure s lit k danh sch:ClassCode, RollNo, FullName, SubjectCode, Mark ln hn hay bng tham s pMark ctruyn vo.
+ Nu thng s pMark khng truyn th nhn gi tr ngm nh =0.
Trung tm o to Lp trnh vin Quc t AiTi-Aptech Page 9 of 20
35/115 Ph nh Cng Hong Mai
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
10/20
BI 3
Vit cc lnh T-SQL thc hin cc cng vic sau:
1. Lit k danh sch lp vi tn lp, gio vin ch nhim v s sinh vin thc t trong lp (l s bnghi c m lp nh nhau trong bng student).
2. Thm mt trng mi vo bng Class c tn l Stud_no c kiu l smallint. Trng ny nhn gi trl s sinh vin thc t trong lp, tc l s sinh vin m c t bng Student. Hy cp nht thngtin cho trng ny.
3. Hy sa li thng tin tnh ton cho trng stud_no trong bng Class. Nh vy thng tin v trngny trong nhng bn ghi sa i khng khp vi s bn ghi tng ng trong bng Student. Hyvit cu lnh lit k trn mn hnh nhng lp m thng tin v s sinh vin trong trong hai bngkhng khp nhau. Danh sch cc trng l:
ClassCode, HeadTeacher, Stud_no, CountStud_no
trong CountStud_no l s sinh vin c tnh ton t bng student.
4. Vit lnh loi b trng Stud_no trong bng Class v thc hin, bo m rng trng ny khngcn tn ti trong bng Class. Hy vit mt stored procedure c tn l proc1 to bng c tn l T1gm cc thng tin sau:
ClassCode, HeadTeacher, CountStud_no
trong CountStud_no l s sinh vin thc t c trong bng Student. Nu bng tn ti t trc
th xa bng trc khi to mi. Nu tn lp c trong bng Class nhng trong bng Student khngc bn ghi no tng ng th lp c coi l c s sinh vin = 0.
5. Vi t Function c tn l func1 c tham s vo l pClassCode c ki u varchar(10) v tr v s sinh vin
th c t c a l p . Vi t l nh th l i k t qu trn mn hnh, sau dng hm ny c p nh t tr ng
stud_no c a b ng Class.
6. Vi t Stored Procedure c tn l procTopClass c cc tham s vo l pClassCode, pSubjectCode l m l p
v m mn h c; tham s ra l pRollNo, l m sinh vin c i m thi mn h c ny cao nh t trong l p. Vi t
l nh th l i b ng cch nh p m l p, m mn h c sau in ra mn hnh m sinh vin cng v i FullName c
i m thi cao nh t.
7. Vi t User-function c tn l func2 c cc tham s vo l pClassCode, pSubjectCode l m l p v m mn
h c; gi tr tr v l m sinh vin c i m thi mn h c ny cao nh t trong l p. Vi t l nh th l i b ng cch
nh p m l p, m mn h c sau in ra mn hnh m sinh vin cng v i FullName c i m thi cao nh t.
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
11/20
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
8. S d ng cursor hi n th classcode, rollno, fullname c a cc sinh vin t i cc b n ghi ch n trong b ng
Student.
9. S d ng cursor s a l i gi tr mark c a cc sinh vin t i cc b n ghi 3, 6, 9,... thnh 25 trong b ng Mark
(cu ny khng c ngha th c t , ch y u l hi u r h n v cursor m thi).
Bi thc hnh SQLSDO - Qun l bn hngCSDL BANHANG lu tr thng tin v qun l bn hng ti siu th Bnh Minh H Ni gm 6 bngc cu trc nh sau:
D liu mu trong bng NhaCungCap:
Trung tm o to Lp trnh vin Quc t AiTi-Aptech Page 11 of 20
35/115 Ph nh Cng Hong Mai
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
12/20
D liu mu trong bng KhachHang:
D liu mu trong bng NhanVien:
D liu mu trong bng LoaiSanPham:
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
13/20
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
(xem tip trang 3)Cu trc cc bng bng c dng (bn c th thay kiu nvarchar bng kiu varchar):
Trung tm o to Lp trnh vin Quc t AiTi-Aptech Page 13 of 20
35/115 Ph nh Cng Hong Mai
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
14/20
(tip theo trang 1)
D liu mu trong bng SanPham:
Lu : Trng SoLuongTT c ngha l s lng ti thiu phi c trong kho. Nu s lng n mc nyth phi nhp hng t nh cung cp.
D liu mu trong bng HoaDon:
D liu mu trong bng HoaDonChiTiet:
Hy vit cc lnh T-SQL thc hin cc cng vic sau:
1. To cc loi index mt cch thch hp v theo di tc ng ca cc lnh ny khi thc hin cc lnhtruy vn (select).
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
15/20
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
2. Trong bng HoaDonChiTiet ct thnh tin cn cha c tnh ton, hy cp nht trng ThanhTien=DonGia*SoLuong*(1-GiamGia).
3. Sau khi c thng tin v ThanhTien trong HoaDonChiTiet, hy cp nht thng tin ca trng Tientrong ha n = tng s tin ca cc mt hng c trong ha n = tng ca ct ThanhTien ca cc
bn ghi trong HoaDonChiTiet c cng s ha n (MaHD). Cp nht trngTongSoTien=Tien*(1+Thue).
4. Hin th danh sch cc mt hng vi y cc thng tin sau: Loi hng, m hng, tn hng sp xptng dn theo tn hng.
5. Lit k tng mt hng v tng s hng bn (c trong ha n chi tit) theo tng mt hng.
6. Lit k tng mt hng v tng s tin bn (c trong ha n chi tit) theo tng mt hng.
7. Lit k chi tit cc mt hng bn bao gm cc thng tin sau:
S ha n, M sn phm (hng), tn sn phm, n gi, s lng, gim gi v thnh tin. Ch litk nhng mt hng c gim gi trn 1% (tc l trng GiamGia > 0.01), v ThanhTien
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
16/20
Bi tp thc hnh SQLSDO - Qun l bn schCho CSDL lu tr thng tin v qun l sch ca hng sch Rng ng H Ni gm ba bngc cu trc nh sau:
Sach: Cha danh sch cc quyn sch c trong ca hng Rng ng
Field Description
MaSach M sch, l Primary key
TenSach Tn sch
TacGia Tc gi
NhaXB Tn nh xut bn
ChuDe Ch
TrongKho S lng cn trong kho
V d, bng Sach c th cha cc thng tin nh sau:
MaSach TenSach TacGia ChuDe DonGia TrongKho
1 Hoang hon tren song Gia Phong Tinh yeu 120 11
2 Cay lua nuoc Le May Khoa hoc 30 24
3 Tam ly truoc mua thi Hai Dang Tam ly 42 32
KhachHang: Cha danh sch khch hng ca ca hng
Field Description
MaKH M khch hng, l Primary key
TenKH Tn khch hng
DiaChi a ch khchhng
Quan Tn qun hoc huyn ni khch hng c tr
DienThoai S in thoi ca khchng
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
17/20
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
V d, bng KhachHang c th cha cc thng tin nh sau:
MaKH TenKH DiaChi Quan DienThoai NguoiGT
1 Le Cong 22 Hang Buom Hoan Kiem 098123654 Hoang Kim
2 Van Nghe 19 Lo Duc Hoan Kiem
3 Tran Thong 19 Doi Can Ba Dinh
4 Hoang Tin 38 Linh Nam Hoang Mai
SachBan: Cha danh sch cc quyn sch bn ca hng Rng ng.
Field Description
SoHD S ha n (l Primary key)
MaKH M khch hng mua sch
MaSach M sch m khch hng mua
NgayMua Ngy mua sch
DonGia n gi sch ti thi im bn sch
SoLuong S lng sch bn
V d, bng SachBan c th cha cc thng tin nh sau:
SoHD
MaKH MaSach NgayBan Soluong
1 1 2 22/11/2006 5
2 1 3 15/7/2005 4
3 2 1 24/5/2006 7
4 3 1 15/11/2005 9
Quan h gia cc bng nh sau:
Trung tm o to Lp trnh vin Quc t AiTi-Aptech Page 17 of 20
35/115 Ph nh Cng Hong Mai
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
18/20
Trong bng SachBan th field MaKH l kha ngoi tham chiu n field MaKH trong bngKhachHang, cn field MaSach l kha ngoi tham chiu n field MaSach trong bng Sach.
M t:Trong bng KhachHang th m s khch hng (MaKH) l duy nht, v cc field d liu v khchhng l bt buc nhp (not NULL), ngoi tr field NguoiGT.
Mt khch hng ln u tin mua hng ca hng sch Rng ng, nhn vin s hi thng tin vkhch hng v nhp vo bng KhachHang. V d, khch hng l Tn n mua sch Nh SchRng ng th thng tin v Tn c th c lu tr trong bang KhachHang nh sau:
MaKH: 15
TenKH: Tn
DiaChi: 123 Doi Can
Quan: Ba Dinh
D liu mua sch s c cp nht vo bng SachBan. Cc field trong bng ny u yu cu nhpd liu (not NULL). Bng Sach lu cc thng tin v tng u sch nh gii thiu trn.
Ch : Cc thuc tnh c gch chn l kho chnh (primary key) ca bng
YU CU:
To database c tn RangDong trong SQL server ca my cc b v thc hin cc cng vic sau:
Cu 1: To bng v nhp d liu
a. Vit cc cu SQL to bng c cc kho chnh v kho ngoi theo lc v m t trn.
b. Vit cc cu SQL nhp y v chnh xc nhng d liu theo m t trn vo cc bng va to.(Lu th t nhp d liu).
c. To cc loi index mt cch thch hp v theo di tc ng ca cc lnh ny khi thc hin cclnh truy vn (select).
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
19/20
Sch bi tp SQL Server 2 AiTi-Aptech Kin to tng lai Ti liu lu hnh ni b
Cu 2: Vit cc cu truy vn d liu (query)
a. Vit cu lnh SQL cho kt qu l s u sch xut bn bi nh xut bn KHKT.
b. Vit cu lnh SQL cho kt qu l danh sch cc nh xut bn cng vi s u sch tng ngca tng NXB, theo th t tng dn ca tn NXB
c. Vit cu lnh SQL cho kt qu l danh sch cc khch hng sng trong qun "Ba Dinh", cngvi tn cc u sch m tng khch hng mua.
d. Vit cu lnh SQL cho kt qu l danh sch cc khch hng, cng vi tng s cc cun sch(total quantity) m tng khch hng mua.
e. Vit cu lnh SQL cho kt qu l danh sch cc khch hng, cng vi tn cc nh xut bn canhng u sch m khch hng mua.
f. Vit cu lnh SQL cho kt qu l danh sch cc khch hng, cng vi s ln mua sch ca tng
khch hng (mi record trong bng SachBan l mt ln mua sch).
g. Vit cu lnh SQL cho kt qu l danh sch cc qun, cng vi tng gi tr mua sch ca cckhch hng sng trong qun . Sp xp theo th t gim dn ca gi tr.
Cu 3: Vit Stored Procedure
Vit mt script to stored procedure vi cc yu cu sau:
- Tn Procedure: procSachBan
- Tham s: pChuDe
- X l:
+ Nu thng s pChuDe khng c truyn, procedure s lit k danh sch tt c ccquyn sch bn (trong bng SACHBAN) gm: MaSach, TenSach, SoLuong,ThanhTien. Lu l mt quyn sch vi tiu no c th c bn nhiu ln vi slng khc nhau, nhng trong danh sch trn th MaSach va TenSach ch hin th mtln, khng lp li.
+ Nu thng s pChuDe c truyn, procedure s lit k danh sch tt c cc quyn sch bn (trong bng SACHBAN) gm: MaSach, TenSach, SoLuong, ThanhTien, nhngch gm nhng quyn thuc ch pChuDe m thi.
Trung tm o to Lp trnh vin Quc t AiTi-Aptech Page 19 of 20
35/115 Ph nh Cng Hong Mai
-
8/2/2019 SQL 2005 2 Practice Books - BachKhoaAptech Com
20/20