06. bai tap chuong sql server_cdcq

Upload: lehuong7885

Post on 07-Apr-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 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.