TRƯỜNG ĐẠI HỌC MỞ HÀ NỘIKHOA CÔNG NGHỆ THÔNG TIN---BÁO CÁO BÀI TẬP LỚNMÔN CƠ SỞ DỮ LIỆUĐỀ SỐ: 3Quản lý Quá trình công tác của Nhân viên trong cơ quan Giáo viên HD: Nguyễn Thùy Linh Sinh
Trang 1TRƯỜNG ĐẠI HỌC MỞ HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
-BÁO CÁO BÀI TẬP LỚN MÔN CƠ SỞ DỮ LIỆU
ĐỀ SỐ: 3 Quản lý Quá trình công tác của Nhân viên trong cơ quan
Giáo viên HD: Nguyễn Thùy Linh
Sinh viên thực hiện: Nguyễn Đức Mạnh – 2010A3
Nguyễn Linh Chi – 2010A4
Năm 2022
Trang 2Tên đề tài: Quản lí quá trình công tác của nhân viên trong cơ quan
1 Phát biểu bài toán:
Mỗi công ty có nhiều phòng ban khác nhau, mỗi phòng ban có mã phòng ban, tên phòng ban, địa chỉ phòng ban, số điện thoại phòng ban Trong đó
mã phòng ban là để phân biệt với các phòng ban với nhau
Mỗi phòng ban có nhiều nhân viên khác nhau, mỗi nhân viên có những thông tin như mã nhân viên, họ tên, ngày sinh, giới tính, địa chỉ, số điện thoại (một nhân viên có thể có nhiều số điện thoại khác nhau), hệ số lương, lương (được tính bởi hệ số lương x 2.000.000 đồng Mỗi nhân viên chỉ thuộc sự quản lí của một phòng ban nào đó, và được phân biệt với nhau thông qua mã nhân viên
Nhiều nhân viên có thể cùng giữ một chức vụ, một chức vụ có thể có nhiều nhân viên đảm nhiệm Chức vụ có các thông tin là mã chức vụ và tên chức
vụ Trong đó mã chức vụ để phân biệt giữa các chức vụ với nhau
Mỗi nhân viên có một quá trình đào tạo khác nhau Quá trình đào tạo gồm
mã đào tạo, thời gian bắt đầu đào tạo (từ tháng năm), thời gian kết thúc đào tạo (đến tháng năm), tên cơ sở đào tạo, ngành học, bằng cấp được nhận
Mỗi nhân viên có một quá trình công tác khác nhau Quá trình công tác gồm mã công tác, thời gian bắt đầu công tác (từ tháng năm), thời gian kết thúc công tác (đến tháng năm), đơn vị công tác, chức vụ công tác
2 Thiết kế CSDL mức khái niệm – mô hình ER:
Xác định đối tượng thực thể:
- Nhân viên: NHAN VIEN
Thuộc tính:
MaNV: Đây là thuộc tính khóa để phân biệt các nhân viên với nhau
HoTen: Họ tên của nhân viên
NgaySinh: Ngày sinh của nhân viên
Trang 3 GioiTinh: Giới tính của nhân viên
DiaChi: Địa chỉ của nhân viên
SDTNV: Đây là thuộc tính đa trị thể hiện mỗi nhân viên có thể
có nhiều số điện thoại
HSL: hệ số lương của nhân viên
Luong: Đây là thuộc tính suy dẫn cho biết lương của nhân viên
- Phòng ban: PHONG BAN
Thuộc tính:
MaPB: thuộc tính khóa phân biệt phòng ban với nhau
TenPB: tên của phòng ban
DiaChiPB: Địa chỉ của phòng ban
SDTPB: số điện thoại phòng ban
- Chức vụ: CHUC VU
Thuộc tính:
MaCV: thuộc tính khóa phân biệt chức vụ công tác với nhau
TenCV: Tên của chức vụ
- Đào tạo: DAO TAO
Thuộc tính:
MaDT: mã đào tạo, là thuộc tính khóa để phân biệt các quá trình đào tạo với nhau
ThoiGianBDDT: thời gian bắt đầu đào tạo (từ tháng năm)
ThoiGianKTCT: thời gian kết thúc đào tạo (đến tháng năm)
TenCSDT: tên cơ sở đào tạo
NganhHoc: ngành học
BangCap: bằng cấp được nhận
- Công tác: CONG TAC
Thuộc tính:
MaCT: là thuộc tính khóa phân biệt các quá trình công tác với nhau
Trang 4 ThoiGianBDCT: thời gian bắt đầu công tác (từ tháng năm)
ThoiGianKTCT: thời gian kết thúc công tác (đến tháng năm)
DonViCT: đơn vị công tác
ChucVuCT: chức vụ công tác
Xác định quan hệ giữa các thực thể:
- Mối quan hệ: thuộc
Thực thể tham gia: NHAN VIEN và PHONG BAN
Một phòng ban chứa nhiều nhân viên, nhưng mỗi nhân viên chỉ thuộc một phòng ban
- Mối quan hệ: đảm nhiệm
Thực thể tham gia: NHAN VIEN và CHUC VU
Nhiều nhân viên có thể cùng giữ một chức vụ, một chức vụ có thể có nhiều nhân viên đảm nhiệm
- Mối quan hệ: có
Thực thể tham gia: NHANVIEN và CONGTAC
Một nhân viên có thể có nhiều quá trình công tác, nhiều quá trình công tác có thể thuộc của một nhân viên
- Mối quan hệ: được
Thực thể tham gia: NHANVIEN và DAOTAO
Một nhân viên có thể có nhiều quá trình đào tạo, nhiều quá trình đào tạo có thể thuộc của một nhân viên
Trang 5Mô hình ER:
NHANVIEN
SDTNV
Duoc
DAOTAO
Thuoc
Dam nhiem
Co
PHONGBAN
CONGTAC
NgaySinh
DiaChi HoTen
MaNV
CHUCVU
MaCV
TenCV
ThoiGian BDDT
MaDT
ThoiGian KTDT
TenCSDT
NganhHoc BangCap
MaPB TenPB
DiaChiPB SDTPB
ThoiGian ThoiGian
MaCT
DonViCT ChucVuCT
1
n 1
1
n
n
GioiTinh
HSL Luong
Trang 63 Xây dựng mô hình cơ sở dữ liệu quan hệ:
1 Áp dụng lần lượt các quy tắc biến đổi mô hình thực thể liên kết về mô hình CSDL quan hệ:
- Quy tắc 1: Chuyển đổi thực thể mạnh:
NHANVIEN (MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, HSL)
CHUCVU (MaCV, TenCV)
PHONGBAN (MaPB, TenPB, DiaChiPB, SDTPB)
DAOTAO (MaDT, ThoiGianBDDT, ThoiGianKTDT, TenCSDT, NganhHoc, BangCap)
CONGTAC (MaCT, ThoiGianBDCT, ThoiGianKTCT, DonViCT, ChucVuCT)
- Quy tắc 2: Chuyển đổi thuộc tính đa trị:
NHANVIEN-SDT (MaNV, SDTNV)
- Quy tắc 3: Chuyển đổi thực thể yếu: Không có thực thể yếu
- Quy tắc 4: Chuyển liên kết quan hệ n-n: Không có quan hệ n-n
- Quy tắc 5: Chuyển liên kết quan hệ 1-n:
NHANVIEN (MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, HSL MaPB, MaCV)
DAOTAO (MaDT, MaNV, ThoiGianBDDT, ThoiGianKTDT, TenCSDT, NganhHoc, BangCap)
CONGTAC (MaCT, MaNV, ThoiGianBDCT, ThoiGianKTCT, DonViCT, ChucVuCT)
- Quy tắc 6: Chuyển liên kết quan hệ 1-1: Không có quan hệ 1-1
- Quy tắc 7: Chuyển đổi mối liên kết có bậc lớn hơn 2: Không có
Trang 72 Chốt lại cơ sở dữ liệu cuối cùng của bài toán:
NHANVIEN (MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, HSL, MaPB, MaCV)
NHANVIEN-SDT (MaNV, SDTNV)
CHUCVU (MaCV, TenCV)
PHONGBAN (MaPB, TenPB, DiaChiPB, SDTPB)
DAOTAO (MaDT, MaNV, ThoiGianBDDT, ThoiGianKTDT, TenCSDT, NganhHoc, BangCap)
CONGTAC (MaCT, MaNV, ThoiGianBDCT, ThoiGianKTCT, DonViCT, ChucVuCT)
4 Ràng buộc toàn vẹn
1 Ràng buộc trên một quan hệ:
Ràng buộc: “Mỗi phòng ban có một mã phòng ban duy nhất”
o Bối cảnh: PHONGBAN
o Nội dung: Mỗi phòng ban có một mã phòng ban duy nhất
o Bảng tầm ảnh hưởng:
Ràng buộc: ”Mỗi nhân viên có một mã nhân viên duy nhất”.
o Bối cảnh: NHANVIEN
o Nội dung: Mỗi nhân viên có một mã nhân viên duy nhất
o Bảng tầm ảnh hưởng:
Trang 8 Ràng buộc: ”Mỗi chức vụ có một mã chức vụ duy nhất”.
o Bối cảnh: CHUCVU
o Nội dung: Mỗi chức vụ có mã chức vụ duy nhất
o Bảng tầm ảnh hưởng:
Ràng buộc: ”Giới tính của nhân viên là ‘Nam’ hoặc ‘Nữ’”.
o Bối cảnh: NHANVIEN
o Nội dung: Giới tính của nhân viên chỉ có thể là ‘Nam’
hoặc ‘Nữ’
o Bảng tầm ảnh hưởng:
2 Ràng buộc nhiều quan hệ
Ràng buộc:” Tập các giá trị MaPB được tìm thấy trong quan hệ
NHANVIEN phải được tìm thấy trong tập các giá trị MaPB trong quan
hệ PHONGBAN”
o Bối cảnh: NHANVIEN và PHONGBAN
o Nội dung: Tập các giá trị MaPB được tìm thấy trong quan hệ
NHANVIEN phải được tìm thấy trong tập các giá trị MaPB trong quan hệ PHONGBAN
o Bảng tầm ảnh hưởng:
Trang 9-5 Chuẩn hóa cơ sở dữ liệu bài toán:
1 Dạng chuẩn 1NF:
- Xét các quan hệ:
NHANVIEN (MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, HSL, MaPB, MaCV)
NHANVIEN-SDT (MaNV, SDTNV)
CHUCVU (MaCV, TenCV)
PHONGBAN (MaPB, TenPB, DiaChiPB, SDTPB)
DAOTAO (MaDT, MaNV, ThoiGianBDDT, ThoiGianKTDT, TenCSDT, NganhHoc, BangCap)
CONGTAC (MaCT, MaNV, ThoiGianBDCT, ThoiGianKTCT, DonViCT, ChucVuCT)
Đều là các quan hệ có thuộc tính chứa các giá trị nguyên tố, không chứa các thuộc tính đa trị và suy dẫn
Cơ sở dữ liệu đạt chuẩn 1NF
2 Dạng chuẩn 2NF:
- Xét các quan hệ:
NHANVIEN (MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, HSL, MaPB, MaCV)
NHANVIEN-SDT (MaNV, SDTNV)
CHUCVU (MaCV, TenCV)
PHONGBAN (MaPB, TenPB, DiaChiPB, SDTPB)
DAOTAO (MaDT, MaNV, ThoiGianBDDT, ThoiGianKTDT, TenCSDT, NganhHoc, BangCap)
Trang 10CONGTAC (MaCT, MaNV, ThoiGianBDCT, ThoiGianKTCT, DonViCT, ChucVuCT)
Đã ở 1NF
Mọi thuộc tính không khóa phụ thuộc hàm đầy đủ vào khóa chính
Cơ sở dữ liệu đạt chuẩn 2NF
3 Dạng chuẩn 3NF:
- Xét các quan hệ:
NHANVIEN (MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, HSL, MaPB, MaCV)
NHANVIEN-SDT (MaNV, SDTNV)
CHUCVU (MaCV, TenCV)
PHONGBAN (MaPB, TenPB, DiaChiPB, SDTPB)
DAOTAO (MaDT, MaNV, ThoiGianBDDT, ThoiGianKTDT, TenCSDT, NganhHoc, BangCap)
CONGTAC (MaCT, MaNV, ThoiGianBDCT, ThoiGianKTCT, DonViCT, ChucVuCT)
Đã là 2NF
Mọi thuộc tính không khóa đều không phụ thuộc bắc cầu vào bất
kỳ khóa chính của quan hệ
Cơ sở dữ liệu đạt chuẩn 3NF
Trang 116 Xác định dữ liệu thực bài toán:
NHANVIEN (MaNV, HoTen, NgaySinh, GioiTinh, DiaChi, HSL, MaPB, MaCV):
NHANVIEN-SDT (MaNV, SDTNV):
CHUCVU (MaCV, TenCV):
Trang 12PHONGBAN (MaPB, TenPB, DiaChiPB, SDTPB):
DAOTAO (MaDT, MaNV, ThoiGianBDDT, ThoiGianKTDT, TenCSDT, NganhHoc, BangCap):
CONGTAC (MaCT, MaNV, ThoiGianBDCT, ThoiGianKTCT, DonViCT, ChucVuCT):
Trang 13Bảng liên kết:
7 Khai thác cơ sở dữ liệu bài toán:
1 Lấy dữ liệu từ 1 bảng:
Lấy ra nhân viên có giới tính là “Nam”
σ <GioiTinh=”Nam”>(NhanVien)
Lấy ra nhân viên có địa chỉ là “Hà Nội”
σ <DiaChi=”Hà Nội”>(NhanVien)
Cho biết mã nhân viên, họ tên của các nhân viên
π <MaNV,HoTen>(NhanVien)
Cho biết các thông tin cá nhân của nhân viên có mã là : “456” π<HoTen,GioiTinh,DiaChi,SDTNV,NgaySinh>
σ<MaNV=”456”>(NhanVien)
Cho biết thông tin của nhân viên có bậc lương là 1.2
σ <BacLuong=”1,2”>(NhanVien)
Trang 142 Lấy dữ liệu từ 2 bảng:
Cho biết họ tên và chức vụ của nhân viên R=NhanVien ChucVu⋈
(NhanVien.MaCV=TrinhDoHocVan.MaCV)
π <MaCV,HoTenNV>(R)
Cho biết tên cơ sở đào tạo của nhân viên R= NhanVien DaoTao⋈
π <TenCSDT,BangCap>(R)
3 Tính toán:
Đếm số lượng nhân viên:
ℑCOUNT<MaNV>(NhanVien)
Tính tổng lương toàn bộ nhân viên: ℑSUM<Luong>(NhanVien)
Lấy thông tin nhân viên có lương cao nhất: MAX<Luong>(NhanVien)
ℑ