1 / 7

DABASES _ TABLE QUERY _ VIEW

BÀI TẬP. DABASES _ TABLE QUERY _ VIEW. QUẢN LÝ LƯƠNG NHÂN VIÊN. Để quản lý lương các nhân viên của một công ty. Công ty xây dựng ABC tổ chức quản lý như sau :

morty
Download Presentation

DABASES _ TABLE QUERY _ VIEW

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. BÀI TẬP DABASES _ TABLE QUERY _ VIEW

  2. QUẢN LÝ LƯƠNG NHÂN VIÊN Để quản lý lương các nhân viên của một công ty. Công ty xây dựng ABC tổ chức quản lý như sau : Trong công ty có hai loại nhân viên. Nhân viên tham gia sản xuất và nhân viên làm việc theo giờ hành chánh. Mỗi nhân viên của công ty ABC có một mã số nhân viên duy nhất (MANV), mỗi mã nhân viên xác định các thông tin như : Họ tên(HOTEN), ngày sinh(NGAYSINH), Phái (PHAI), điạ chỉ(DIACHI), phòng ban (Mapb),chức vụ (Macv), Lương căn bản(LCB), hệ số lương(HSL). Mỗi nhân viên thuộc về duy nhất một phòng ban. Mỗi phòng ban có Mapb, Tenpb, Tentp. Công ty gồm các phòng BGD, HC, VT, KH, KT và PX. Mỗi nhân viên có một chức vụ duy nhất. Mỗi chức vụ có Macv, tencv, Phucap. Công ty có các chức vụ sau : GD, PGD, TP, PP, TT, NV. Hàng tháng công ty tính lương cho nhân viên như sau : Nhân viên làm việc theo ngày công : Lương tháng = LCB * HSL + Phucap +Thuong Thuong = 2000000 nếu NC>=25 Thuong =1500000 nếu NC<25 và NC>=20 Thuong =1000000 nếu NC<20 và NC>15, còn lại là 0. Nhân viên trực tiếp tham gia sản xuất : Lương tháng = LCB*HSL+Phucap+sum(SLgiacong*Dongia)+ thuong(Thuong =1000000 nếu XL =‘A’, 500000 nếu XL =‘B’, 300000 nếu XL =‘C’, còn lại là 0). Trong một tháng, mỗi công nhân có thể làm nhiều công việc. Mỗi công việc có MaCv, TenCv và đơn giá gia công(DGGC). Câu hỏi : Dựa vào các yêu cầu trên, anh chị viết các lệnh sau : • Tạo CSDL QLyLuong các thông số tùy chọn. • Tạo các Table có các ràng buộc khóa chính, khóa ngọai, check và Default.

  3. QUẢN LÝ LƯƠNG NHÂN VIÊN 1. Lược đồ CSDL : NHANVIEN(MANV, HOTEN, PHAI, NGAYSINH, DIACHI, MAPB, MACV, LCB, HSL) PHONGBAN(MAPB, TENPB, TENTP) CHUCVU(MACV, TENCV, PHUCAP) GIACONGHC(MANV, THANGNAM, NC) GIACONGSC(MANV, THANGNAM, MACV, SOLUONG) CONGVIEC(MACV, TENCV, DONGIA) Viết lệnh thực hiện các câu hỏi sau • Thêm vào bảng GiacongHC Field Xếp Lọai với ràng buộc là chỉ nhập vào một trong các giá trị là A, B, C,D. • Thêm vào bảng Nhanvien Field LoaiCv với ràng buộc là chỉ nhập vào một trong các giá trị là SX (Nhân viên sản xuất), HC(Nhân viên làm theo giờ hành chánh) . • Thêm vào ràng buộc cho NC, chỉ nhập từ 0 đến 26. • Qui định giá trị mặc định ban đầu cho Field LCB là 500000. • Sửa kiểu dữ liệu cho ngày sinh là SmallDatetime. • Thực hiện các lệnh xem trợ giúp vê CSDL, Table, các ràng buộc. • Tính Phucap theo công thức sau : Nếu Cv=‘GD’, PC=1000000, Cv=“PGD” hay “TP”, PC=800000, CV=‘PP’ hay ‘TT’, PC=500000, còn lại là 300000. • Tính XL = ‘A’ nếu Soluong>100, XL=‘B’ nếu Soluong>50 và <=100, XL =‘C’ nếu Soluong>30 và <=50, còn lại là ‘D’

  4. QUẢN LÝ LƯƠNG NHÂN VIÊN Thực hiện các lệnh truy vấn dữ liệu sau : • Danh sách các nhân viên tham gia sản xuất. • Danh sách các nhân viên không tham gia sản xuất. • Bảng lương nhân viên thuộc đơn vị phân xưởng gồm Manv, Hoten, Mapb, Macv, Lcb, Hsl, Tencv, Luong của từng tháng. • Bảng lương nhân viên làm việc theo giờ hành chánh gồm Manv, Hoten, Mapb, Macv, Lcb, Hsl, Tencv, Nc, Xl, Luong của từng tháng.

  5. QUẢN LÝ LƯƠNG NHÂN VIÊN • Bảng lương nhân viên thuộc đơn vị phân xưởng gồm Manv, Hoten, Mapb, Macv, Lcb, Hsl, Tencv, Luong của từng tháng ở phòng VT và HC. • Số nhân viên của từng phòng ban. • Cho biết phòng ban nào có số nhân viên lớn hơn 10. • Cho biết tổng lương của các nhân viên của từng phòng ban từ tháng 9 đến tháng 12. • Danh sách các nhân viên được sắp xếp theo từng phòng ban, cùng phòng ban thì theo tên. • Cho biết công việc nào có đơn giá lớn hơn đơn giá trung bình. • Danh sách các nhân viên không tham gia sản xuất nghỉ làm trong tháng 9, 10 (Viết bằng ba cách Not Exists, Left Join và Not in. • Danh sách các nhân viên tham gia sản xuất nghỉ làm trong tháng 9, 10 (Viết bằng ba cách Not Exists, Left Join và Not in. • Bảng lương nhân viên thuộc đơn vị phân xưởng gồm Manv, Hoten, Mapb, Macv, Lcb, Hsl, Tencv, Luong của từng tháng. Dùng Compute để liệt kê tổng lương của từng đơn vị và của tòan công ty • Bảng lương nhân viên làm việc theo giờ hành chánh gồm Manv, Hoten, Mapb, Macv, Lcb, Hsl, Tencv, Nc, Xl, Luong của từng tháng. Dùng Compute để liệt kê tổng lương của từng đơn vị và của tòan công ty

  6. QUẢN LÝ LƯƠNG NHÂN VIÊN • Dùng Union để kết bảng lương của các nhân viên gồm Manv, hoten, thang, luong (của sản xuất và hành chánh). • Danh sách các nhân viên tổng số lượng gia công của các công việc là CV1, Cv3 và CV4(dùng Roll up). • Tạo bảng LuongSX chứa bảng lương nhân viên thuộc đơn vị phân xưởng gồm Manv, Hoten, Mapb, Macv, Lcb, Hsl, Tencv, Luong của từng tháng. • Tạo bảng LuongHC chứa bảng lương nhân viên làm việc theo giờ hành chánh gồm Manv, Hoten, Mapb, Macv, Lcb, Hsl, Tencv, Nc, Xl, Luong của từng tháng. • Dùng lệnh Insert thêm vào bảng Nhanvien một nhân viên mới dữ liệu tự cho. • Dùng lệnh Insert thêm vào bảng LuongPX và LuongHC bảng lương tháng 8.

  7. QUẢN LÝ LƯƠNG NHÂN VIÊN Tạo các View sau : • Tạo view DSNVHC chứa các nhân viên làm giờ hành chánh gồm Manv, hoten, thang, Mapb, Lcb, Hsl, nc, luong được sắp xếp theo phòng ban. • Tạo view DSNVPX chứa các nhân viên tham gia sản xuất gồm Manv, hoten, thang, Lcb, Hsl, luong được sắp xếp theo thang. • Tạo view DSNV gồm các thông tin của bảng nhanvien. Chèn một Record vào View này, kiểm tra và nhận xét. • Tạo view DSNV gồm các thông tin của bảng nhanvien nhưng có thêm từ khóa Encryption và With Schemabinding. Chèn một Record vào View này, kiểm tra và nhận xét cho mỗi trường hợp. • Dùng lệnh cho xem text của view4. • Dùng lệnh Alter Table để hiệu chỉnh kiểu dữ liệu cho cột LCB là Real. Nhận xét • Tạo view gồm các thông tin như câu 1 nhưng chỉ chứa các nhân viên phòng HC. • Tạo view gồm các thông tin như câu 1 nhưng chỉ chứa các nhân viên phòng KT với từ khóa With Check Option. • Thêm vào một mẫu tin giá trị tùy ý vào hai View 7 (chú ý thử với các lọai PB và cho nhận xét. • Xóa các mẫu tin vừa chèn, sau đó chèn lại thông qua view 8 và cho nhận xét. • Tạo 3 bảng NV_HC, NV_VT, NV_KT gồm Manv, Hoten, Mapb. Trong đó : NV_HC có check constraints là Mapb là ‘HC’ NV_VT có check constraints là Mapb là ‘VT’ NV_KT có check constraints là Mapb là ‘KT’ 12. Tạo một Partition view từ ba bảng trên, sau đó chèn mẫu tin tùy ý thông qua view. Cho biết mẫu tin được lưu vào bảng nào.

More Related