1. Trang chủ
  2. » Giáo Dục - Đào Tạo

XÂY DỰNG mô HÌNH cơ sở dữ LIỆU QUẢN lý NHÂN sự CÔNG TY

42 8 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây dựng mô hình cơ sở dữ liệu quản lý nhân sự công ty
Tác giả Nguyễn Ngọc Nam, Đặng Đại Lợi
Người hướng dẫn Giảng viên bộ môn Viên Thanh Nhã
Trường học Trường Đại học Kinh tế Thành phố Hồ Chí Minh
Chuyên ngành Công nghệ thông tin Kinh doanh
Thể loại Đồ án cuối kỳ
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 42
Dung lượng 2,26 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • 2. Chức năng và nhiệm vụ của hệ thống quản lý nhân sự (5)
  • 3. Yêu cầu của hệ thống và những khó khăn (5)
  • 4. Những yêu cầu đặt ra đối với hệ thống (5)
  • II. XÂY DỰNG MÔ HÌNH THỰC THỂ, MÔ HÌNH THỰC THỂ QUAN HỆ (6)
    • 1. Giải thích các thực thể Các khái niệm cơ bản (6)
      • 2.1. Giải thích mối quan hệ giữa các thực thể ; (12)
      • 2.2. Mô hình thực thể quan hệ (15)
  • III. XÂY DỰNG MÔ HÌNH QUAN HỆ (15)
    • 3.1. Xác định bảng và các thuộc tính của bảng (15)
  • IV. MỘT SỐ RÀNG BUỘC (20)
  • V. MÔ HÌNH DỮ LIỆU VẬT LÝ (0)
    • 1. Câu lệnh tạo bảng (0)
    • 2. Mô hình ERD (24)
  • VI. CHUẨN HOÁ VỀ DẠNG 3NF (24)
  • VII. XÂY DỰNG CÁC PHÉP TOÁN ĐẠI SỐ QUAN HỆ (26)
  • VIII. LỆNH MÔ TẢ DỮ LIỆU (27)
  • XI. VIẾT STROE PROCEDURE VÀ FUCTION (39)
  • XII. TRIGGER RÀNG BUỘC DỮ LIỆU CHO CÁC BẢNG (40)
  • XIII. PHÂN QUYỀN (41)
  • XIV. SAO LƯU DỮ LIỆU (42)

Nội dung

Và sự ra đời của một hệ thống thông tin về “Quản lý nhân sự” phục vụ cho công tác nghiệp vụ của con người làm giảm thiểu tối đa những vất vả trong công việc ví dụ như hồ sơ trước đây phả

Chức năng và nhiệm vụ của hệ thống quản lý nhân sự

Hệ thống quản lý nhân sự đóng vai trò liên tục cập nhật và thông báo các hoạt động quan trọng như tổ chức lao động và chính sách lương cho ban lãnh đạo Được quản lý trực tiếp bởi giám đốc, hệ thống này giúp nâng cao hiệu quả quản trị nhân sự và đảm bảo các quyết định về nhân sự được thực hiện dựa trên dữ liệu chính xác và kịp thời.

Hệ thống quản lý nhân sự có nhiệm vụ cập nhật hồ sơ cán bộ công nhân viên theo quy định, đảm bảo thông tin luôn chính xác và mới nhất Việc thường xuyên bổ sung các thông tin thay đổi là một phần quan trọng giúp hệ thống hoạt động hiệu quả Điều này không chỉ hỗ trợ công tác thanh toán lương chính xác mà còn nâng cao hiệu quả quản lý nhân sự trong doanh nghiệp.

Công tác thống kê và báo cáo tình hình theo yêu cầu của ban giám đốc đóng vai trò quan trọng trong hệ thống quản lý cán bộ, giúp đảm bảo tính chính xác và kịp thời trong việc đánh giá và điều hành nhân sự.

Yêu cầu của hệ thống và những khó khăn

Trong bối cảnh có hàng loạt nhân viên và các yêu cầu phức tạp, quản lý thủ công trở nên không khả thi và gặp nhiều khó khăn Phương pháp này đòi hỏi nhiều nhân lực, thời gian và công sức để lưu trữ, tìm kiếm, bổ sung, sửa đổi hồ sơ của từng nhân viên Do đó, việc quản lý nhân sự bằng phương pháp truyền thống không đáp ứng kịp các yêu cầu ngày càng cao về hiệu quả và độ chính xác.

Do những nhược điểm đã nêu, việc xây dựng một hệ thống thông tin học hóa là cần thiết để nâng cao hiệu quả quản lý nhân sự và các hệ thống quản lý khác, đảm bảo chính xác, nhanh chóng và tiết kiệm thời gian.

Những yêu cầu đặt ra đối với hệ thống

Trong quá trình phát triển của xã hội, công tác tổ chức quản lý ngày càng cần được đầu tư và nâng cao chất lượng để đáp ứng yêu cầu ngày càng cao Việc này giúp các cấp lãnh đạo dễ dàng thực hiện các chủ trương, chính sách đối với cán bộ công nhân viên chức một cách hiệu quả Đầu tư vào quản lý tổ chức không những nâng cao năng lực điều hành mà còn góp phần thúc đẩy sự phát triển bền vững của tổ chức và xã hội.

XÂY DỰNG MÔ HÌNH THỰC THỂ, MÔ HÌNH THỰC THỂ QUAN HỆ

Giải thích các thực thể Các khái niệm cơ bản

Thực thể (Entity) là khái niệm mô tả các lớp đối tượng có đặc trưng cần quan tâm trong hệ thống Các thực thể có thể là những đối tượng cụ thể hoặc trừu tượng, phản ánh các thành phần quan trọng trong sơ đồ Trong sơ đồ, thực thể thường được ký hiệu bằng hình chữ nhật để dễ nhận diện và phân biệt.

Thuộc tính (Attribute) là các đặc điểm hoặc tính chất chung của đối tượng, nhằm mô tả đặc trưng nổi bật của thực thể đó Nó có thể là các giá trị đơn trị, đa trị (lặp), hoặc phức hợp, giúp xác định rõ nét đặc điểm của đối tượng trong các hệ thống dữ liệu và mô hình thông tin.

Thực thể “Nhân viên” lưu trữ các thông tin cơ bản như mã nhân viên, họ tên gồm họ nhân viên, tên lót, tên nhân viên, ngày sinh, quê quán và giới tính Các dữ liệu này giúp quản lý nhân sự hiệu quả và đảm bảo tính chính xác trong hệ thống Việc lưu trữ đầy đủ thông tin nhân viên là bước quan trọng để phục vụ công tác tuyển dụng, chấm công, và các nghiệp vụ nhân sự khác.

Dân tộc, Số điện thoại, Mã phòng ban, Mã chức vụ,Mã bằng cấp, Bậc lương.

Phòng ban là thực thể lưu trữ các thông tin quan trọng của từng bộ phận trong tổ chức, bao gồm mã phòng ban, tên phòng ban, địa chỉ, số điện thoại liên hệ và mã trưởng phòng Thông tin này giúp quản lý nhân sự và thông tin liên lạc hiệu quả, đảm bảo việc tổ chức hoạt động diễn ra suôn sẻ Việc xây dựng hồ sơ đầy đủ về phòng ban là cần thiết để nâng cao hiệu quả quản lý và phục vụ công tác tổ chức.

Thực thể "Phân công" ghi nhận các công việc theo từng nhiệm vụ cụ thể, bao gồm các thuộc tính quan trọng như mã phòng ban, mã đề án và số giờ làm việc Việc phân công rõ ràng giúp quản lý công việc hiệu quả hơn, đảm bảo mỗi một nhiệm vụ được giao đúng người, đúng thời gian, và dễ dàng theo dõi tiến độ công việc Các thuộc tính này đóng vai trò trung tâm trong việc lưu trữ và truy xuất thông tin phân công, giúp tổ chức hoạt động linh hoạt và tối ưu hóa hiệu suất làm việc.

*Thực thể “Địa điểm”: Mỗi địa điểm sẽ lưu trữ thông tin cơ bản về địa điểm, bao gồm các thuộc tính: Mã địa điểm, Tên địa điểm.

Thực thể "Bằng cấp" chứa đựng các thông tin cơ bản như mã bằng cấp, tên bằng cấp và chuyên ngành liên quan, giúp quản lý và tra cứu nhanh chóng về các loại bằng cấp khác nhau.

Thực thể “Hợp đồng lao động” chứa đựng các thông tin quan trọng như mã nhân viên, mã chức vụ, loại hợp đồng và ngày bắt đầu làm việc Việc lưu trữ chi tiết này giúp quản lý hợp đồng một cách chính xác và hiệu quả Các dữ liệu này đóng vai trò quan trọng trong quá trình theo dõi và xử lý các hợp đồng lao động của doanh nghiệp Tối ưu hóa việc quản lý hợp đồng lao động góp phần nâng cao hiệu suất công việc và đảm bảo quyền lợi cho người lao động.

Thực thể "Chức vụ" trong hệ thống quản lý nhân sự mô tả các vị trí khác nhau mà mỗi hợp nhân đảm nhận Mỗi chức vụ được lưu trữ với các thông tin quan trọng như mã chức vụ, tên chức vụ và mã mô tả để đảm bảo rõ ràng trong việc xác định và phân loại các vị trí công việc Việc quản lý chức vụ chính xác giúp tối ưu hóa quy trình tổ chức và nâng cao hiệu quả công việc của doanh nghiệp.

Thực thể "Mô tả công việc" bao gồm các thông tin quan trọng về mô tả nhiệm vụ của từng chức vụ trong tổ chức Mỗi vị trí có mô tả công việc riêng biệt với mã mô tả và nội dung mô tả rõ ràng, giúp dễ dàng xác định trách nhiệm và yêu cầu của từng vị trí Việc lưu trữ thông tin này giúp quản lý nhân sự hiệu quả và tối ưu hóa quá trình tuyển dụng, đào tạo Đảm bảo cập nhật đầy đủ các mô tả công việc góp phần nâng cao hiệu quả hoạt động của doanh nghiệp.

Thực thể “Lương” trong hệ thống nhân sự bao gồm các thông tin quan trọng như bậc lương, lương cơ bản, mức lương và hệ số lương, phản ánh mức thu nhập khác nhau của từng nhân viên Mỗi nhân viên sẽ có mức lương riêng biệt dựa trên các yếu tố này, giúp xác định rõ ràng chế độ thù lao phù hợp Việc lưu trữ đầy đủ các thông tin về lương không chỉ hỗ trợ quản lý hiệu quả mà còn đảm bảo tính minh bạch trong trả lương và tính lương cho nhân viên.

*Thực thể “Nghỉ phép”: Mỗi nghỉ phép lưu trữ thông tin nghỉ phép bao gồm: Mã nhân viên , Mã ngày nghỉ, Trạng thái.

*Thực thể “Ngày nghỉ”: Mỗi ngày nghỉ lưu trữ thông tin ngày nghỉ bao gồm:

Mã ngày nghỉ, Ngày nghỉ.

*Thực thể “Khen thưởng”: Mỗi khen thưởng lưu trữ thông khen thường bao gồm: Mã khen thưởng , Lý do.

*Thực thể “Nhận thưởng”: Mỗi nhận thưởng lưu trữ thông tin nhận thưởng bao gồm: Mã nhân viên , Mã khen thưởng, Tiền thưởng.

2.1 Giải thích mối quan hệ giữa các thực thể ;

Các khái niệm cơ bản

Mối liên hệ (Entity Relationship) giữa các thực thể thường được biểu diễn bằng hình thoi trong sơ đồ thực thể quan hệ Các loại liên kết trong sơ đồ này phản ánh các mối quan hệ đa dạng giữa các thực thể, giúp mô tả rõ ràng cấu trúc dữ liệu trong hệ thống thông tin Việc hiểu và xác định chính xác các mối liên hệ là yếu tố quan trọng để thiết kế cơ sở dữ liệu hiệu quả và hợp lý.

Quan hệ 1-1: là mối quan hệ mà mỗi bản thể trong thực thể E1 chỉ có nhiều nhất một bản thể được liên kết trong thực thể E2.

Quan hệ 1-n mô tả mối liên hệ trong đó mỗi bản thể trong thực thể E1 có thể không liên kết hoặc liên kết với một hoặc nhiều bản thể trong thực thể E2 Đây là kiểu quan hệ phổ biến trong thiết kế cơ sở dữ liệu, giúp quản lý dữ liệu một cách linh hoạt và hiệu quả Trong mô hình này, một bản thể trong E1 có thể liên kết với nhiều bản thể trong E2, nhưng mỗi bản thể trong E2 chỉ thuộc về một bản thể duy nhất trong E1, tạo thành một mối quan hệ một đến nhiều Các doanh nghiệp thường sử dụng quan hệ 1-n để thể hiện các mối liên hệ như khách hàng và đơn hàng, nơi mỗi khách hàng có thể đặt nhiều đơn hàng Hiểu rõ về quan hệ 1-n giúp tối ưu hóa quá trình thiết kế dữ liệu, đảm bảo dữ liệu được tổ chức một cách rõ ràng và dễ quản lý.

Quan hệ n-n: là mối quan hệ mà mỗi bản thể trong thực thể có thể liên kết với nhiều bản thể trong thực thể khác và ngược lại.

Thuộc tính của mối liên hệ (Relationship Attribute): Mỗi mối liên hệ cũng có thể có những thuộc tính riêng của chúng.

Giải thích mối quan hệ các thực thể

1 Mối quan hệ giữa thực thể Phòng ban và thực thể Nhân viên là quan hệ 1-n: một phòng ban có thể có một hoặc nhiều nhân viên, mỗi nhân viên chỉ thuộc một phòng ban nhất định

2 Mối quan hệ giữa thực thể Phòng ban và thực thể Đề án là quan hệ n-n: một phòng ban có thể có một hoặc nhiều đề án, mỗi đề án được phân công từ một hoặc nhiều phòng ban.

3 Mối quan hệ giữa thực thể Đề án và thực thể Địa điểm là quan hệ 1-n: Một đề án có thể tiến hành có một hoặc nhiều địa điểm, một địa điểm chỉ tiến hành một đề án nhất định

Downloaded by Heo Út (quangutbin@gmail.com)

XÂY DỰNG MÔ HÌNH QUAN HỆ

Xác định bảng và các thuộc tính của bảng

Các bảng dữ liệu nhân viên bao gồm các thông tin quan trọng như mã nhân viên, họ tên (họ nhân viên, tên lót, tên nhân viên), ngày sinh, quê quán, giới tính, dân tộc, số điện thoại, mã phòng ban, mã chức vụ, mã bằng cấp và bậc lương Việc lưu trữ dữ liệu này giúp quản lý nhân sự hiệu quả, đảm bảo thông tin đầy đủ và chính xác cho từng nhân viên trong tổ chức Chọn lọc các trường dữ liệu quan trọng này phù hợp với các chiến lược SEO giúp nâng cao khả năng tìm kiếm và truy cập thông tin về quản lý nhân sự.

Bảng Phòng ban (Mã phòng ban, Tên phòng ban, Địa chỉ, Số điện thoại phòng ban,

Bảng Phân công (Mã phòng ban, Mã đề án, Số giờ làm).

Downloaded by Heo Út (quangutbin@gmail.com)

Bảng Đề án (Mã đề án, Tên đề án, Mã địa điểm).

Bảng Địa điểm (Mã địa điểm, Tên địa điểm).

Bảng Bằng cấp (Mã bằng cấp , Tên bằng cấp, Chuyên ngành).

Bảng Hợp đồng lao động (Mã nhân viên, Mã chức vụ, Loại hợp đồng, Ngày đảm nhận).

Bảng Chức vụ (Mã chức vụ, Tên chức vụ, Mã mô tả).

Bảng Mô tả công việc (Mã mô tả, Mô tả).

Downloaded by Heo Út (quangutbin@gmail.com)

Bảng Lương (Bậc lương, Lương cơ bản, Mức lương, Hệ số lương).

Bảng Nghỉ phép (Mã nhân viên, Mã ngày nghỉ, Trạng thái).

Bảng Ngày nghỉ (Mã ngày nghỉ, Ngày nghỉ).

Bảng Khen thưởng (Mã khen thưởng, Lý do).

Bảng Nhận thưởng (Mã nhân viên, Mã khen thưởng, Tiền thưởng).

MỘT SỐ RÀNG BUỘC

Ràng buộc toàn vẹn là các điều kiện được định nghĩa trên một hoặc nhiều quan hệ trong mô hình dữ liệu nhằm đảm bảo tính nhất quán và chính xác của dữ liệu Chúng xuất phát từ các quy định thực tế và yêu cầu trong mô hình dữ liệu, như trong mô hình quản lý dữ liệu nhân sự của công ty Việc thực hiện các thao tác làm thay đổi dữ liệu cần tuân thủ các ràng buộc toàn vẹn để tránh gây ra các tình huống không mong muốn hoặc làm mất tính toàn vẹn của dữ liệu Do đó, việc duy trì ràng buộc toàn vẹn đóng vai trò quan trọng trong việc xây dựng và vận hành hệ thống quản lý cơ sở dữ liệu chính xác và đáng tin cậy.

Ràng buộc toàn vẹn đóng vai trò then chốt trong xây dựng mô hình quản lý dữ liệu, đặc biệt là quản lý dữ liệu nhân sự công ty Việc thiết lập các quy định về ràng buộc trên dữ liệu nhập/xuất đảm bảo tính nhất quán, chính xác và bảo mật của dữ liệu, góp phần nâng cao hiệu quả vận hành và quản trị doanh nghiệp.

Downloaded by Heo Út (quangutbin@gmail.com)

Bảng Mô tả công việc

Bảng Hợp đồng lao động

CONSTRAINT HDLD_pkey PRIMARY KEY (MaCV, MaNV)

CONSTRAINT NGHIPHEP_pkey PRIMARY KEY (MaNN,MaNV)

Bảng Chứng chỉ tiếng anh

CONSTRAINT CHUNGCHITIENGANH_pkey PRIMARY KEY (MaNV,TenCC) );

CONSTRAINT PHANCONG_pkey PRIMARY KEY (MaPB,MaDA)

Downloaded by Heo Út (quangutbin@gmail.com)

ADD FOREIGN KEY (MaDD) REFERENCES DIADIEM (MaDD);

ADD FOREIGN KEY (MaMT) REFERENCES MOTACONGVIEC (MaMT); ALTER TABLE NGHIPHEP

ADD FOREIGN KEY (MaNN) REFERENCES NGAYNGHI (MaNN);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN (MaNV);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN (MaNV);

ADD FOREIGN KEY (MaTrPhong) REFERENCES NHANVIEN (MaNV); ALTER TABLE PHANCONG

ADD FOREIGN KEY (MaPB) REFERENCES PHONGBAN (MaPB);

ADD FOREIGN KEY (MaDA) REFERENCES DEAN (MaDA);

ADD FOREIGN KEY (MaPB) REFERENCES PHONGBAN (MaPB);

ADD FOREIGN KEY (MaCV) REFERENCES CHUCVU (MaCV);

ADD FOREIGN KEY (MaBC) REFERENCES BANGCAP (MaBC);

ADD FOREIGN KEY (BacLuong) REFERENCES LUONG (BacLuong); ALTER TABLE HOPDONGLAODONG

ADD FOREIGN KEY (MaCV) REFERENCES CHUCVU(MaCV);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN(MaNV);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN(MaNV);

ADD FOREIGN KEY(MaKT) REFERENCES KHENTHUONG(MaKT);

VI CHUẨN HOÁ VỀ DẠNG 3NF

BƯỚC 1:Liệt kê các thuộc tính

NHANVIEN(MaNV, HoTen, NgaySinh, QueQuan, GioiTinh, DanToc, SDT, MaPB,

LUONG(BacLuong, LuongCoBan, HeSoLuong, MucLuong) CHUNGCHITIENGANH(MaNV,

TenCC, NgayCap, NgayHetHan) NGHIPHEP(MaNV, MaNN, TrangThai)

HOPDONGLAODONG(MaCV, MaNV, LoaiHopDong, NgayDamNhan) PHONGBAN(MaPB,

TenPB, DiaChi, SDTPB, MaTrPhong) CHUCVU(MaCV, TenCV, MaMT)

PHANCONG(MaPB, MaDA, SoGioLam) MOTACONGVIEC(MaMT, MoTa) DEAN(MaDA,

BƯỚC 2:Loại bỏ các thuộc tính lặp, đa trị

Downloaded by Heo Út (quangutbin@gmail.com)

(8) MaPB  TenPB, DiaChi, SDTPB, MaTrPhong

NHANVIEN(MaNV, HoNV, TenLot, TenNV , NgaySinh, QueQuan, GioiTinh, DanToc, SDT, MaPB,

CHUNGCHITIENGANH(MaNV, TenCC, NgayCap, NgayHetHan)

HOPDONGLAODONG(MaCV, MaNV, LoaiHopDong, NgayDamNhan)

PHONGBAN(MaPB, TenPB, DiaChi, SDTPB, MaTrPhong)

DEAN(MaDA, TenDA, MaDD, MaPB)

VII XÂY DỰNG CÁC PHÉP TOÁN ĐẠI SỐ QUAN HỆ a Phép chọn

Tìm các nhân viên có giới tính là nam :

Tìm các nhân viên có năm sinh là 1965:

Tìm các nhân viên SDT đầu là 098 :

Tìm các nhân viên có mã phòng ban là QL01 : b Phép chiếu

Chiếu đến MaPB và TenPB :

Chiếu đến MaCV, MaNV và LoaiHopDong :

Chiếu đến MaMT và MoTa : c Phép giao

Tìm các nhân viên đi làm đầy đủ

Tìm các phòng ban không tham gia đề án

Tìm các nhân viên không có chứng chỉ tiếng anh

Tìm các nhân viên có bậc lương 2

CHUCVU x MOTACONGVIEC g Phép kết nối

-Phép nối ngoài – bên trái

-Phép nối ngoài – bên phải

-Phép nối ngoài đầy đủ

Downloaded by Heo Út (quangutbin@gmail.com)

VIII LỆNH MÔ TẢ DỮ LIỆU a Câu lệnh tạo database

CREATE DATABASE QUANLYNHANSU b Câu lệnh tạo các table dựa trên các quan hệ đã cho trên database

CONSTRAINT HDLD_pkey PRIMARY KEY (MaCV, MaNV)

CONSTRAINT NGHIPHEP_pkey PRIMARY KEY (MaNN,MaNV)

CONSTRAINT CHUNGCHITIENGANH_pkey PRIMARY KEY (MaNV,TenCC) );

CONSTRAINT PHANCONG_pkey PRIMARY KEY (MaPB,MaDA)

Downloaded by Heo Út (quangutbin@gmail.com)

ADD FOREIGN KEY (MaDD) REFERENCES DIADIEM (MaDD);

ADD FOREIGN KEY (MaMT) REFERENCES MOTACONGVIEC (MaMT); ALTER TABLE NGHIPHEP

ADD FOREIGN KEY (MaNN) REFERENCES NGAYNGHI (MaNN);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN (MaNV);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN (MaNV);

ADD FOREIGN KEY (MaTrPhong) REFERENCES NHANVIEN (MaNV); ALTER TABLE PHANCONG

ADD FOREIGN KEY (MaPB) REFERENCES PHONGBAN (MaPB);

ADD FOREIGN KEY (MaDA) REFERENCES DEAN (MaDA);

ADD FOREIGN KEY (MaPB) REFERENCES PHONGBAN (MaPB);

ADD FOREIGN KEY (MaCV) REFERENCES CHUCVU (MaCV);

ADD FOREIGN KEY (MaBC) REFERENCES BANGCAP (MaBC);

ADD FOREIGN KEY (BacLuong) REFERENCES LUONG (BacLuong); ALTER TABLE HOPDONGLAODONG

ADD FOREIGN KEY (MaCV) REFERENCES CHUCVU(MaCV);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN(MaNV);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN(MaNV)

ADD FOREIGN KEY(MaKT) REFERENCES KHENTHUONG(MaKT)

Lệnh thao tác dữ liệu trong SQL cho phép thêm và cập nhật dữ liệu vào các bảng Ví dụ, câu lệnh INSERT INTO NHANVIEN giúp chèn nhiều bản ghi nhân viên mới với các thông tin như mã nhân viên, họ tên, ngày sinh, địa chỉ, giới tính, dân tộc, số điện thoại Các câu lệnh này đảm bảo dữ liệu được cập nhật chính xác và đầy đủ vào bảng NHANVIEN, hỗ trợ quản lý thông tin nhân viên một cách hiệu quả Việc sử dụng câu lệnh INSERT INTO là chìa khóa để duy trì dữ liệu thống nhất và đồng bộ trong hệ thống quản lý cơ sở dữ liệu.

Xã Phước Vĩnh An, huyện Củ Chi, Thành phố Hồ Chí Minh là nơi cư trú của nhiều nhân viên Trong số đó có các nhân viên như Lê Phong Hoàng sinh năm 1963, sống tại C16/2a đường Huỳnh Bá Chánh, xã Tân Kiên, huyện Bình Chánh, thành phố Hồ Chí Minh Nguyễn Văn Hoàng sinh năm 1975, cư trú tại B12/9M đường Cây Bàng, xã Tân Kiên, huyện Bình Chánh Ngoài ra, còn có Nguyễn Quang Linh, sinh năm 1978, sống tại 867 Lò Gỗốm, phường 05, Quận 6, thành phố Hồ Chí Minh Một nhân viên khác là Lê Đại Lợi, sinh năm 1965, cư trú tại 362/25/6F1 Phan Huy Ích, phường 12, Quận Gò Vấp.

Dưới đây là danh sách nhân viên của công ty bao gồm các thông tin quan trọng về tên, ngày sinh, địa chỉ, giới tính, dân tộc và số điện thoại Các nhân viên này có nguồn gốc từ nhiều khu vực khác nhau tại Thành phố Hồ Chí Minh, với đa số là người kinh và một số là người Tày Ví dụ, Hoàng Phan Diệu sinh ngày 19/3/1965, hiện cư trú tại khu phố Trường Lưu, Quận Thủ Đức, thành phố Hồ Chí Minh, có số điện thoại 0758977486 Lê Hải Dương sinh ngày 24/4/1970, sống tại Quận Tân Bình, thành phố Hồ Chí Minh, với số điện thoại 0987496749 Ngoài ra, còn có các nhân viên như Hoàng Đại Thụ sinh ngày 4/6/1972 ở Quận Thủ Đức, Nguyễn Phương Linh sinh ngày 4/1/1975 tại Quận Tân Phú, Nguyễn Mai Linh sinh ngày 12/4/1976 tại Quận Thủ Đức, Trần Phong Hàn sinh ngày 22/7/1963 tại Quận Thủ Đức, Lê Đại Nghĩa sinh ngày 25/12/1969 tại Huyện Hóc Môn, và Lê Bá Tiến sinh ngày 2/5/1979 tại Quận Tân Hưng.

7, Thành ph ỗố H ỗằ Chí Minh', N'Nam', 'Kinh', '0986937693', null, null, null, null)

Downloaded by Heo Út (quangutbin@gmail.com)

VALUES ('KQM02',N'Cử Nhân',N'Kinh doanh qu ỗố c t ềố ')

VALUES ('KQM03',N'Cử Nhân',N'Logistics')

VALUES ('BKU01',N'Cử Nhân',N'Khoa học máy tính')

VALUES ('BKU02',N'Cử Nhân',N'Kỹ sư ph ầằ n m ềằ m')

VALUES ('BKU03',N'Cử Nhân',N'Tự động hóa')

VALUES ('VIN01',N'Cử Nhân',N'Ngoại thương')

VALUES ('VIN02',N'Cử Nhân',N'Ngôn ngữ Anh')

VALUES ('VIN03',N'Cử Nhân',N'Kinh t ềố đ ỗố i ngoại')

VALUES ('BIT01',N'Thạc Sĩ',N'Data Science')

VALUES ('BIT02',N'Thạc Sĩ',N'Thương mại điện tử')

VALUES ('BIT03',N'Ti ềố n Sĩ',N'Công nghệ thông tin')

UPDATE NHANVIEN SET MaBC = 'KQM02' WHERE MaNV = '51210'

UPDATE NHANVIEN SET MaBC = 'BIT02' WHERE MaNV = '51211'

UPDATE NHANVIEN SET MaBC = 'KQM03' WHERE MaNV = '51212'

UPDATE NHANVIEN SET MaBC = 'BIT03' WHERE MaNV = '51213'

UPDATE NHANVIEN SET MaBC = 'BKU01' WHERE MaNV = '51214'

UPDATE NHANVIEN SET MaBC = 'BKU02' WHERE MaNV = '51215'

UPDATE NHANVIEN SET MaBC = 'BKU03' WHERE MaNV = '51216'

UPDATE NHANVIEN SET MaBC = 'C3001' WHERE MaNV = '51217'

UPDATE NHANVIEN SET MaBC = 'C3002' WHERE MaNV = '51218'

UPDATE NHANVIEN SET MaBC = 'C3003' WHERE MaNV = '51234'

UPDATE NHANVIEN SET MaBC = 'BIT01' WHERE MaNV = '51235'

UPDATE NHANVIEN SET MaBC = 'KQM01' WHERE MaNV = '51236'

UPDATE NHANVIEN SET MaBC = 'VIN01' WHERE MaNV = '51237'

UPDATE NHANVIEN SET MaBC = 'VIN02' WHERE MaNV = '51238'

UPDATE NHANVIEN SET MaBC = 'VIN03' WHERE MaNV = '51239'

VALUES ('NC01',N'Nghiên cứu', N'Q1, TP H ỗằ Chí Minh', '0867358307', null) INSERT INTO PHONGBAN

VALUES ('QL01',N'Quản lý', N'Q10, TP H ỗằ Chí Minh', '0767358307', null)INSERT INTO PHONGBAN

This article includes database updates related to employee and department information It introduces a new entry with the values "TT01," "Truyền thông," located at "Q5, Ho Chi Minh City," with contact number "0667358307." Several update statements modify department management codes: department "NC01" now has manager code "51235," while "QL01" has been assigned "51210," and "TT01" has the manager code "51237." Additionally, an employee with ID "51210" has been reassigned to the "QL01" department, ensuring accurate data management within the company's HR system.

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51211'

UPDATE NHANVIEN SET MaPB = 'QL01' WHERE MaNV = '51212'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51213'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51214'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51215'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51216'

UPDATE NHANVIEN SET MaPB = 'TT01' WHERE MaNV = '51217'

UPDATE NHANVIEN SET MaPB = 'TT01' WHERE MaNV = '51218'

UPDATE NHANVIEN SET MaPB = 'TT01' WHERE MaNV = '51234'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51235'

UPDATE NHANVIEN SET MaPB = 'QL01' WHERE MaNV = '51236'

UPDATE NHANVIEN SET MaPB = 'TT01' WHERE MaNV = '51237'

UPDATE NHANVIEN SET MaPB = 'QL01' WHERE MaNV = '51238'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51239'

VALUES('1', N'Nghiên cứu hành vi', null)

VALUES('10', N'Đèn giao thông', null)

Downloaded by Heo Út (quangutbin@gmail.com)

UPDATE DEAN SET MaDD = 'VT' WHERE MaDA = '1'

UPDATE DEAN SET MaDD = 'NT' WHERE MaDA = '2'

UPDATE DEAN SET MaDD = 'SG' WHERE MaDA = '3'

UPDATE DEAN SET MaDD = 'HN' WHERE MaDA = '10'

UPDATE DEAN SET MaDD = 'SG' WHERE MaDA = '20'

UPDATE DEAN SET MaDD = 'HN' WHERE MaDA = '30'

VALUES('2603','51235', N'Có việc gia đình')

VALUES('2204','51236', N'Có Chuyện đột xu ầố t')

VALUES('3008','51215', N'Có tiệc trong nhà')

VALUES('001',N'Nhân viên xu ầố t s ằố c')

VALUES('003',N'Ý tưởng phát triển t ỗố t')

VALUES('004',N'Nhân viên của năm')

Downloaded by Heo Út (quangutbin@gmail.com)

VALUES ('GD', N'Giám đ ỗố c', null)

VALUES ('HR', N'Quản lý nhân sự', null)

VALUES ('IT', N'Trưởng phòng công nghệ', null)

VALUES ('MR', N'Trưởng phòng truy ềằ n thông', null)

VALUES('MM', N'Một người từ một nhóm người quản lý d ầỗ n d ằố t hoặc giám sát một khu vực cụ thể của một công ty')

Trong doanh nghiệp, việc tìm kiếm, khai thác, quản lý và sử dụng nguồn lực về con người một cách hợp lý và hiệu quả đóng vai trò vô cùng quan trọng Quản lý nguồn nhân lực giúp tối ưu hóa hiệu suất làm việc và thúc đẩy sự phát triển bền vững của tổ chức Đẩy mạnh ứng dụng các giải pháp quản trị nhân sự hiện đại sẽ góp phần nâng cao năng lực đội ngũ nhân viên, từ đó mang lại lợi ích lớn cho doanh nghiệp.

VALUES('CN', N'Đi ềằ u ph ỗố i, lập k ềố hoạch và d ầỗ n d ằố t các nhiệm vụ liên quan đ ềố n ph ầằ n m ềằ m, máy tính trong một tổ chức')

Người đứng đầu phòng truyền thông của doanh nghiệp đóng vai trò quan trọng trong việc xây dựng và duy trì hình ảnh thương hiệu trước công chúng Họ thực hiện các hoạt động đa dạng nhằm đảm bảo hình ảnh của doanh nghiệp luôn tích cực và uy tín Vai trò của họ bao gồm quản lý truyền thông nội bộ và bên ngoài, tạo dựng chiến lược truyền thông hiệu quả, cũng như duy trì mối quan hệ tốt với truyền thông và cộng đồng Những nỗ lực này giúp nâng cao thương hiệu và thúc đẩy sự phát triển bền vững của doanh nghiệp.

UPDATE CHUCVU SET MaMT = 'MM' WHERE MaCV = 'GD'

UPDATE CHUCVU SET MaMT = 'NS' WHERE MaCV = 'HR'

UPDATE CHUCVU SET MaMT = 'CN' WHERE MaCV = 'IT'

UPDATE CHUCVU SET MaMT = 'TT' WHERE MaCV = 'MR'

VALUES('GD','51210',N'Hợp đ ỗằ ng lao động không xác định thời hạn','01/21/2005') INSERT INTO HOPDONGLAODONG

VALUES('HR','51213',N'Hợp đ ỗằ ng lao động xác định thời hạn','10/10/2014') INSERT INTO HOPDONGLAODONG

VALUES('IT','51211',N'Hợp đ ỗằ ng lao động xác định thời hạn','11/02/2012')

VALUES('MR','51235',N'Hợp đ ỗằ ng lao động xác định thời hạn','05/06/2008') -— -— -— -— -— -—

UPDATE NHANVIEN SET BacLuong = 1 WHERE MaNV = '51210'

UPDATE NHANVIEN SET BacLuong = 2 WHERE MaNV = '51211'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51212'

UPDATE NHANVIEN SET BacLuong = 2 WHERE MaNV = '51213'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51214'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51215'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51216'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51217'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51218'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51234'

UPDATE NHANVIEN SET BacLuong = 2 WHERE MaNV = '51235'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51236'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51237'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51238'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51239'

UPDATE NHANVIEN SET MaCV = 'GD' WHERE MaNV = '51210'

UPDATE NHANVIEN SET MaCV = 'HR' WHERE MaNV = '51211'

UPDATE NHANVIEN SET MaCV = 'IT' WHERE MaNV = '51213'

UPDATE NHANVIEN SET MaCV = 'MR' WHERE MaNV = '51235' c, Xóa dữ liệu ở các bảng table bằng lệnh SQL delete from CHUNGCHITIENGANH where MaNV = '51210'

Data retrieval commands are essential for accessing information from databases; for example, you can perform a simple query to retrieve all records from a single table such as "BANGCAP" or "CHUCVU." To extract data from multiple related tables, join operations are used, such as retrieving employee details along with their department information by joining "NHANVIEN" and "PHONGBAN" on "MaPB," or performing a left join between "NHANVIEN" and "CHUCVU" to include employees regardless of whether they have a corresponding position These SQL queries facilitate efficient data analysis and management of organizational information.

This article demonstrates essential SQL queries for employee data management It includes selecting employee IDs, names, genders, and departments, such as retrieving all male employees or those in department 'QL01' It also covers filtering employees born between 1970 and 1980 to analyze the age group of staff members Calculating the current age of employees by subtracting their birth year from the current year is highlighted Additionally, the article shows how to compute the average bonus amount received by employees, count the total number of employees, and sum the total bonuses awarded These SQL queries are vital for efficient HR data analysis and reporting.

The highest bonus received by an employee can be identified using a query that joins the Employee and Bonus tables, selecting employee IDs, names, and bonus amounts where the bonus equals the maximum value in the Bonus table Grouped queries are useful for analyzing data, such as counting the number of English vocabulary words in a specialized English list, counting employees assigned to projects, or counting employees per department Conditional grouping helps to identify specific insights; for example, counting English vocabulary words that appear more than three times, summing bonuses by employee ID with totals exceeding 1,000 units, or calculating total working hours per department when exceeding 100 hours Employee counts per department can also be filtered to departments with fewer than five employees Set operations like intersection, union, and difference are essential for complex data analysis, such as finding common department IDs between projects and departments, intersecting employee IDs to identify employees both involved in projects and receiving bonuses, or comparing employee data across multiple tables for comprehensive insights.

The search focuses on identifying employees who lack an English language certificate, specifically IELTS This is achieved by selecting their employee codes and names from the NhanVien table where their employee IDs are not present in the intersection of the NhanVien and CHUNGCHITIENGANH tables for certificates with 'IELTS' in their name This query helps HR or management to pinpoint staff members who may need to obtain English certification to meet training, qualification, or compliance requirements.

2) Tìm các Nhân Viên có bậc lương 2 select MaNV, TenNV, BacLuong from NhanVien where BacLuong not in (1,3)

3) Tìm các Phòng Ban không tham gia Đề Án select MaPB, TenPB from PhongBan where MaPB not in (select MaPB from PhongBan intersect select MaPB from PhanCong)

The article discusses methods for identifying employees who have attended work full-time, utilizing SQL queries such as selecting employee IDs, names, and birthdates from the NhanVien table while excluding those involved in disciplinary actions by intersecting with the NGHIPHEP table It also highlights the use of UNION statements to compile unique department IDs from the PhongBan table and assignment records from PhanCong, as well as consolidating employee IDs from various tables like NhanVien, NHANTHUONG, and NGHIPHEP Additionally, the article covers subqueries and nested queries essential for complex data retrieval within relational databases.

1) Nhân viên có bậc lương 1,2 select MaNV, TenNV, BacLuong from NHANVIEN where BacLuong in (select BacLuong from NHANVIEN where BacLuong in (1,2))

2) Nhân viên có bậc lương cao nhất select MaNV, TenNV, BacLuong from NHANVIEN where BacLuong = (select max(BacLuong) from NHANVIEN)

3) Nhân viên có chứng chỉ tiếng anh select MaNV, TenNV from NHANVIEN where MaNV in (select MaNV from CHUNGCHITIENGANH)

4) Tổng số giờ làm của mỗi phòng ban

SELECT distinct n1.MaPB, (SELECT Sum(SoGioLam)

FROM PHANCONG n2 WHERE n1.MaPB = n2.MaPB) truyvancon2

Downloaded by Heo Út (quangutbin@gmail.com) left join NHANVIEN nv on cc.MaNV = nv.MaNV) as t count(TenCC) for TenCC in ([IELTS], [TOEIC], [TOEFL])

2) Thời gian hoàn thành đề án của từng phòng ban select MaPB, [1], [2], [10], [20], [30] from (select * from PHANCONG) as t

PIVOT ( sum(SoGioLam) for MaDA in ([1], [2], [10], [20], [30])

3) Thời gian trung bình hoàn thành đề án của từng phòng ban select MaPB, [1], [2], [10], [20], [30] from (select * from PHANCONG) as t PIVOT ( avg(SoGioLam) for MaDA in ([1], [2], [10], [20], [30])

This article explores which departments are involved in various projects by analyzing their participation across multiple initiatives Using SQL queries, such as selecting department names and project identifiers, and applying PIVOT functions, it highlights the involvement of departments in specific projects like MaDA [1], [2], [10], [20], and [30] This approach provides a clear overview of departmental engagement in different project assignments, facilitating better resource management and strategic planning.

This article provides guidance on creating stored procedures and functions in SQL, including examples for calculating age and retrieving employee data For instance, a procedure named `TinhTuoi` calculates an individual's age based on their birth year, while `TimNhanVienCoChungChiTiengAnh` identifies employees holding English language certificates such as TOEIC Additionally, the article demonstrates creating functions like `TinhTuoi_function`, which computes age from a birth date, and `NhanVienCoTuoiTrongKhoang`, a table-valued function that filters employees within a specified age range Using these stored procedures and functions enhances database efficiency and supports complex data retrieval, ensuring your SQL queries are both optimized and easily maintainable.

MÔ HÌNH DỮ LIỆU VẬT LÝ

CHUẨN HOÁ VỀ DẠNG 3NF

BƯỚC 1:Liệt kê các thuộc tính

NHANVIEN(MaNV, HoTen, NgaySinh, QueQuan, GioiTinh, DanToc, SDT, MaPB,

LUONG(BacLuong, LuongCoBan, HeSoLuong, MucLuong) CHUNGCHITIENGANH(MaNV,

TenCC, NgayCap, NgayHetHan) NGHIPHEP(MaNV, MaNN, TrangThai)

HOPDONGLAODONG(MaCV, MaNV, LoaiHopDong, NgayDamNhan) PHONGBAN(MaPB,

TenPB, DiaChi, SDTPB, MaTrPhong) CHUCVU(MaCV, TenCV, MaMT)

PHANCONG(MaPB, MaDA, SoGioLam) MOTACONGVIEC(MaMT, MoTa) DEAN(MaDA,

BƯỚC 2:Loại bỏ các thuộc tính lặp, đa trị

Downloaded by Heo Út (quangutbin@gmail.com)

(8) MaPB  TenPB, DiaChi, SDTPB, MaTrPhong

NHANVIEN(MaNV, HoNV, TenLot, TenNV , NgaySinh, QueQuan, GioiTinh, DanToc, SDT, MaPB,

CHUNGCHITIENGANH(MaNV, TenCC, NgayCap, NgayHetHan)

HOPDONGLAODONG(MaCV, MaNV, LoaiHopDong, NgayDamNhan)

PHONGBAN(MaPB, TenPB, DiaChi, SDTPB, MaTrPhong)

DEAN(MaDA, TenDA, MaDD, MaPB)

XÂY DỰNG CÁC PHÉP TOÁN ĐẠI SỐ QUAN HỆ

Tìm các nhân viên có giới tính là nam :

Tìm các nhân viên có năm sinh là 1965:

Tìm các nhân viên SDT đầu là 098 :

Tìm các nhân viên có mã phòng ban là QL01 : b Phép chiếu

Chiếu đến MaPB và TenPB :

Chiếu đến MaCV, MaNV và LoaiHopDong :

Chiếu đến MaMT và MoTa : c Phép giao

Tìm các nhân viên đi làm đầy đủ

Tìm các phòng ban không tham gia đề án

Tìm các nhân viên không có chứng chỉ tiếng anh

Tìm các nhân viên có bậc lương 2

CHUCVU x MOTACONGVIEC g Phép kết nối

-Phép nối ngoài – bên trái

-Phép nối ngoài – bên phải

-Phép nối ngoài đầy đủ

Downloaded by Heo Út (quangutbin@gmail.com)

LỆNH MÔ TẢ DỮ LIỆU

CREATE DATABASE QUANLYNHANSU b Câu lệnh tạo các table dựa trên các quan hệ đã cho trên database

CONSTRAINT HDLD_pkey PRIMARY KEY (MaCV, MaNV)

CONSTRAINT NGHIPHEP_pkey PRIMARY KEY (MaNN,MaNV)

CONSTRAINT CHUNGCHITIENGANH_pkey PRIMARY KEY (MaNV,TenCC) );

CONSTRAINT PHANCONG_pkey PRIMARY KEY (MaPB,MaDA)

Downloaded by Heo Út (quangutbin@gmail.com)

ADD FOREIGN KEY (MaDD) REFERENCES DIADIEM (MaDD);

ADD FOREIGN KEY (MaMT) REFERENCES MOTACONGVIEC (MaMT); ALTER TABLE NGHIPHEP

ADD FOREIGN KEY (MaNN) REFERENCES NGAYNGHI (MaNN);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN (MaNV);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN (MaNV);

ADD FOREIGN KEY (MaTrPhong) REFERENCES NHANVIEN (MaNV); ALTER TABLE PHANCONG

ADD FOREIGN KEY (MaPB) REFERENCES PHONGBAN (MaPB);

ADD FOREIGN KEY (MaDA) REFERENCES DEAN (MaDA);

ADD FOREIGN KEY (MaPB) REFERENCES PHONGBAN (MaPB);

ADD FOREIGN KEY (MaCV) REFERENCES CHUCVU (MaCV);

ADD FOREIGN KEY (MaBC) REFERENCES BANGCAP (MaBC);

ADD FOREIGN KEY (BacLuong) REFERENCES LUONG (BacLuong); ALTER TABLE HOPDONGLAODONG

ADD FOREIGN KEY (MaCV) REFERENCES CHUCVU(MaCV);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN(MaNV);

ADD FOREIGN KEY (MaNV) REFERENCES NHANVIEN(MaNV)

ADD FOREIGN KEY(MaKT) REFERENCES KHENTHUONG(MaKT)

Trong phần IX, "Lệnh thao tác dữ liệu," hướng dẫn cách thêm và cập nhật dữ liệu vào bảng bằng câu lệnh SQL INSERT INTO Ví dụ: để thêm nhân viên mới vào bảng NHANVIEN, sử dụng câu lệnh như `INSERT INTO NHANVIEN VALUES('51234', N'Quán', N'Phú', N'Bình', '1974-1-12', N'569 Nguyễn Trãi, Phường 07, Quận 5, Thành phố Hồ Chí Minh', 'Nam', 'Kinh', '0843245323', null, null, null, null)` Các câu lệnh này giúp nhập dữ liệu nhân viên mới một cách chính xác, đồng thời duy trì tính nhất quán trong quản lý dữ liệu nhân sự.

Xã Phước Vĩnh An, Huyện Củ Chi, Thành phố Hồ Chí Minh là nơi sinh sống của nhiều nhân viên Các nhân viên đều có thông tin rõ ràng về tên, ngày sinh, địa chỉ và số điện thoại để thuận tiện cho công tác quản lý và liên lạc Các nhân viên như Lê Phong Hoàng, sinh ngày 18/8/1963, cư trú tại xã Tân Kiên, Bình Chánh; Nguyễn Văn Hoàng, sinh ngày 18/1/1975, sống tại xã Tân Kiên, Bình Chánh; Nguyễn Quang Linh, sinh ngày 11/3/1978, cư ngụ tại quận 6 Đây là những dữ liệu quan trọng để xây dựng hệ thống nhân sự hiệu quả và tối ưu hóa các hoạt động của công ty.

Dưới đây là danh sách nhân viên với các thông tin cơ bản như họ tên, ngày sinh, địa chỉ, giới tính, dân tộc và số điện thoại Các nhân viên bao gồm Hoàng Phan Diệu, sinh ngày 19/3/1965 và sinh sống tại Thành phố Thủ Đức; Lê Hải Dương, sinh ngày 24/4/1970 tại Quận Tân Bình; Hoàng Đại Thụ, sinh ngày 4/6/1972 tại Thành phố Thủ Đức; Nguyễn Phương Linh, sinh ngày 4/1/1975 tại Quận Tân Phú; Nguyễn Mai Linh, sinh ngày 12/4/1976 tại Thành phố Thủ Đức; Trần Phong Hàn, sinh ngày 22/7/1963 tại Thành phố Thủ Đức; Lê Đại Nghĩa, sinh ngày 25/12/1969 tại Huyện Hóc Môn; và Lê Bá Tiền, sinh ngày 2/5/1979 tại Quận Tân Hưng Thông tin này giúp hiểu rõ về đội ngũ nhân viên trong hệ thống của công ty.

7, Thành ph ỗố H ỗằ Chí Minh', N'Nam', 'Kinh', '0986937693', null, null, null, null)

Downloaded by Heo Út (quangutbin@gmail.com)

VALUES ('KQM02',N'Cử Nhân',N'Kinh doanh qu ỗố c t ềố ')

VALUES ('KQM03',N'Cử Nhân',N'Logistics')

VALUES ('BKU01',N'Cử Nhân',N'Khoa học máy tính')

VALUES ('BKU02',N'Cử Nhân',N'Kỹ sư ph ầằ n m ềằ m')

VALUES ('BKU03',N'Cử Nhân',N'Tự động hóa')

VALUES ('VIN01',N'Cử Nhân',N'Ngoại thương')

VALUES ('VIN02',N'Cử Nhân',N'Ngôn ngữ Anh')

VALUES ('VIN03',N'Cử Nhân',N'Kinh t ềố đ ỗố i ngoại')

VALUES ('BIT01',N'Thạc Sĩ',N'Data Science')

VALUES ('BIT02',N'Thạc Sĩ',N'Thương mại điện tử')

VALUES ('BIT03',N'Ti ềố n Sĩ',N'Công nghệ thông tin')

UPDATE NHANVIEN SET MaBC = 'KQM02' WHERE MaNV = '51210'

UPDATE NHANVIEN SET MaBC = 'BIT02' WHERE MaNV = '51211'

UPDATE NHANVIEN SET MaBC = 'KQM03' WHERE MaNV = '51212'

UPDATE NHANVIEN SET MaBC = 'BIT03' WHERE MaNV = '51213'

UPDATE NHANVIEN SET MaBC = 'BKU01' WHERE MaNV = '51214'

UPDATE NHANVIEN SET MaBC = 'BKU02' WHERE MaNV = '51215'

UPDATE NHANVIEN SET MaBC = 'BKU03' WHERE MaNV = '51216'

UPDATE NHANVIEN SET MaBC = 'C3001' WHERE MaNV = '51217'

UPDATE NHANVIEN SET MaBC = 'C3002' WHERE MaNV = '51218'

UPDATE NHANVIEN SET MaBC = 'C3003' WHERE MaNV = '51234'

UPDATE NHANVIEN SET MaBC = 'BIT01' WHERE MaNV = '51235'

UPDATE NHANVIEN SET MaBC = 'KQM01' WHERE MaNV = '51236'

UPDATE NHANVIEN SET MaBC = 'VIN01' WHERE MaNV = '51237'

UPDATE NHANVIEN SET MaBC = 'VIN02' WHERE MaNV = '51238'

UPDATE NHANVIEN SET MaBC = 'VIN03' WHERE MaNV = '51239'

VALUES ('NC01',N'Nghiên cứu', N'Q1, TP H ỗằ Chí Minh', '0867358307', null) INSERT INTO PHONGBAN

VALUES ('QL01',N'Quản lý', N'Q10, TP H ỗằ Chí Minh', '0767358307', null)INSERT INTO PHONGBAN

The article details updates to a company's employee and department records It includes the addition of a new department with code 'TT01', named "Truyềằn thông," located in Ho Chi Minh City, with contact number 0667358307 Several department codes have been revised: 'NC01' now has the manager code '51235', 'QL01' has been updated to '51210', and 'TT01' is assigned the manager code '51237' Additionally, an employee with ID '51210' has been reassigned to the 'QL01' department, ensuring organizational records are current and accurate.

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51211'

UPDATE NHANVIEN SET MaPB = 'QL01' WHERE MaNV = '51212'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51213'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51214'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51215'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51216'

UPDATE NHANVIEN SET MaPB = 'TT01' WHERE MaNV = '51217'

UPDATE NHANVIEN SET MaPB = 'TT01' WHERE MaNV = '51218'

UPDATE NHANVIEN SET MaPB = 'TT01' WHERE MaNV = '51234'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51235'

UPDATE NHANVIEN SET MaPB = 'QL01' WHERE MaNV = '51236'

UPDATE NHANVIEN SET MaPB = 'TT01' WHERE MaNV = '51237'

UPDATE NHANVIEN SET MaPB = 'QL01' WHERE MaNV = '51238'

UPDATE NHANVIEN SET MaPB = 'NC01' WHERE MaNV = '51239'

VALUES('1', N'Nghiên cứu hành vi', null)

VALUES('10', N'Đèn giao thông', null)

Downloaded by Heo Út (quangutbin@gmail.com)

UPDATE DEAN SET MaDD = 'VT' WHERE MaDA = '1'

UPDATE DEAN SET MaDD = 'NT' WHERE MaDA = '2'

UPDATE DEAN SET MaDD = 'SG' WHERE MaDA = '3'

UPDATE DEAN SET MaDD = 'HN' WHERE MaDA = '10'

UPDATE DEAN SET MaDD = 'SG' WHERE MaDA = '20'

UPDATE DEAN SET MaDD = 'HN' WHERE MaDA = '30'

VALUES('2603','51235', N'Có việc gia đình')

VALUES('2204','51236', N'Có Chuyện đột xu ầố t')

VALUES('3008','51215', N'Có tiệc trong nhà')

VALUES('001',N'Nhân viên xu ầố t s ằố c')

VALUES('003',N'Ý tưởng phát triển t ỗố t')

VALUES('004',N'Nhân viên của năm')

Downloaded by Heo Út (quangutbin@gmail.com)

VALUES ('GD', N'Giám đ ỗố c', null)

VALUES ('HR', N'Quản lý nhân sự', null)

VALUES ('IT', N'Trưởng phòng công nghệ', null)

VALUES ('MR', N'Trưởng phòng truy ềằ n thông', null)

VALUES('MM', N'Một người từ một nhóm người quản lý d ầỗ n d ằố t hoặc giám sát một khu vực cụ thể của một công ty')

Trong doanh nghiệp, việc tìm kiếm, khai thác, quản lý và sử dụng nguồn lực về con người một cách hợp lý và hiệu quả là yếu tố then chốt để đạt được thành công Quản lý nhân sự hiệu quả giúp tối ưu hóa năng lực của từng cá nhân, nâng cao hiệu quả làm việc và thúc đẩy sự phát triển bền vững của doanh nghiệp Việc khai thác tối đa tiềm năng của nguồn lực con người đóng vai trò quan trọng trong việc nâng cao năng suất và cạnh tranh trên thị trường.

VALUES('CN', N'Đi ềằ u ph ỗố i, lập k ềố hoạch và d ầỗ n d ằố t các nhiệm vụ liên quan đ ềố n ph ầằ n m ềằ m, máy tính trong một tổ chức')

Người đứng đầu phòng truyền thông của doanh nghiệp đóng vai trò quan trọng trong việc xây dựng và duy trì hình ảnh thương hiệu trước công chúng Họ thực hiện các hoạt động đa dạng nhằm tạo dựng hình ảnh tích cực và nâng cao uy tín của doanh nghiệp trên thị trường Vai trò của họ gồm quản lý các chiến dịch truyền thông, xử lý các vấn đề liên quan đến truyền thông và đảm bảo thông điệp của doanh nghiệp được truyền tải một cách hiệu quả Trong bối cảnh cạnh tranh khốc liệt, người đứng đầu phòng truyền thông đóng vai trò then chốt trong việc xây dựng hình ảnh chuyên nghiệp và thúc đẩy sự phát triển bền vững của doanh nghiệp.

UPDATE CHUCVU SET MaMT = 'MM' WHERE MaCV = 'GD'

UPDATE CHUCVU SET MaMT = 'NS' WHERE MaCV = 'HR'

UPDATE CHUCVU SET MaMT = 'CN' WHERE MaCV = 'IT'

UPDATE CHUCVU SET MaMT = 'TT' WHERE MaCV = 'MR'

VALUES('GD','51210',N'Hợp đ ỗằ ng lao động không xác định thời hạn','01/21/2005') INSERT INTO HOPDONGLAODONG

VALUES('HR','51213',N'Hợp đ ỗằ ng lao động xác định thời hạn','10/10/2014') INSERT INTO HOPDONGLAODONG

VALUES('IT','51211',N'Hợp đ ỗằ ng lao động xác định thời hạn','11/02/2012')

VALUES('MR','51235',N'Hợp đ ỗằ ng lao động xác định thời hạn','05/06/2008') -— -— -— -— -— -—

UPDATE NHANVIEN SET BacLuong = 1 WHERE MaNV = '51210'

UPDATE NHANVIEN SET BacLuong = 2 WHERE MaNV = '51211'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51212'

UPDATE NHANVIEN SET BacLuong = 2 WHERE MaNV = '51213'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51214'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51215'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51216'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51217'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51218'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51234'

UPDATE NHANVIEN SET BacLuong = 2 WHERE MaNV = '51235'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51236'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51237'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51238'

UPDATE NHANVIEN SET BacLuong = 3 WHERE MaNV = '51239'

UPDATE NHANVIEN SET MaCV = 'GD' WHERE MaNV = '51210'

UPDATE NHANVIEN SET MaCV = 'HR' WHERE MaNV = '51211'

UPDATE NHANVIEN SET MaCV = 'IT' WHERE MaNV = '51213'

UPDATE NHANVIEN SET MaCV = 'MR' WHERE MaNV = '51235' c, Xóa dữ liệu ở các bảng table bằng lệnh SQL delete from CHUNGCHITIENGANH where MaNV = '51210'

Data retrieval commands in SQL include querying single tables such as "select * from BANGCAP," "select * from CHUCVU," "select * from KHENTHUONG," and "select * from CHUNGCHITIENGANH." To extract data spanning multiple tables, JOIN operations are employed, for example, "select * from NHANVIEN nv, PHONGBAN pb where nv.MaPB = pb.MaPB" for an inner join between employees and departments Additionally, left joins like "select * from NHANVIEN nv left join CHUCVU cv on cv.MaCV = nv.MaCV" are used to retrieve comprehensive employee information along with their positions, while other queries such as "select * from DEAN da" extend data retrieval across related tables These SQL query techniques are essential for efficient database data analysis and management.

This article demonstrates essential SQL queries used in employee data management It includes selecting specific employee details such as employee ID, name, and gender, particularly filtering for male employees or those in the managerial department (MaPB like 'QL01') Additional queries retrieve employees born between 1970 and 1980, highlighting age calculations by subtracting birth year from the current year Aggregation functions are also showcased, such as calculating the average bonus (TienThuong), counting the total number of employees, and summing total bonus amounts These SQL statements are fundamental for extracting, analyzing, and summarizing employee information efficiently Incorporating these queries improves database management and supports business decision-making processes.

This article covers SQL queries for employee bonuses, grouping, conditional aggregation, and set operations It highlights how to identify employees with the highest bonuses by selecting from the NHANTHUONG and NHANVIEN tables based on maximum TienThuong Grouped queries analyze data such as the number of English certificates per language, total bonuses per department, and working hours per project, including filters like counts greater than three or totals exceeding a threshold It also demonstrates how to use HAVING clauses for refined data analysis, such as departments with fewer than five employees or projects with over 100 working hours Additionally, set operations like INTERSECT are shown to identify common elements across different tables such as departments and employees, facilitating complex data comparisons in HR and project management contexts These SQL techniques assist in effective data analysis for human resources and organizational planning.

This article discusses how to identify employees lacking an official English certification, such as IELTS The SQL query selects employee ID, name, and date of birth from the NhanVien table where the employee's ID is not found in the intersection of employees who hold IELTS certification, as recorded in the CHUNGCHITIENGANH table This method helps organizations efficiently find staff members without recognized English language certifications.

2) Tìm các Nhân Viên có bậc lương 2 select MaNV, TenNV, BacLuong from NhanVien where BacLuong not in (1,3)

3) Tìm các Phòng Ban không tham gia Đề Án select MaPB, TenPB from PhongBan where MaPB not in (select MaPB from PhongBan intersect select MaPB from PhanCong)

This article discusses methods to identify active employees by selecting their IDs, names, and birthdates from the NhanVien table, excluding those who are on unpaid leave, determined through intersecting employee IDs from related tables It further explains how to retrieve department IDs from the PhongBan table and combines them with project assignment data, employee reward records, and unpaid leave entries using UNION operations Additionally, the article covers the implementation of subqueries to efficiently filter and compile comprehensive employee information for human resource management.

1) Nhân viên có bậc lương 1,2 select MaNV, TenNV, BacLuong from NHANVIEN where BacLuong in (select BacLuong from NHANVIEN where BacLuong in (1,2))

2) Nhân viên có bậc lương cao nhất select MaNV, TenNV, BacLuong from NHANVIEN where BacLuong = (select max(BacLuong) from NHANVIEN)

3) Nhân viên có chứng chỉ tiếng anh select MaNV, TenNV from NHANVIEN where MaNV in (select MaNV from CHUNGCHITIENGANH)

4) Tổng số giờ làm của mỗi phòng ban

SELECT distinct n1.MaPB, (SELECT Sum(SoGioLam)

FROM PHANCONG n2 WHERE n1.MaPB = n2.MaPB) truyvancon2

Downloaded by Heo Út (quangutbin@gmail.com) left join NHANVIEN nv on cc.MaNV = nv.MaNV) as t count(TenCC) for TenCC in ([IELTS], [TOEIC], [TOEFL])

2) Thời gian hoàn thành đề án của từng phòng ban select MaPB, [1], [2], [10], [20], [30] from (select * from PHANCONG) as t

PIVOT ( sum(SoGioLam) for MaDA in ([1], [2], [10], [20], [30])

3) Thời gian trung bình hoàn thành đề án của từng phòng ban select MaPB, [1], [2], [10], [20], [30] from (select * from PHANCONG) as t PIVOT ( avg(SoGioLam) for MaDA in ([1], [2], [10], [20], [30])

This article examines which departments participate in specific projects by analyzing project allocations The query retrieves department names, project IDs, and counts of department involvement in projects with IDs [1], [2], [10], [20], and [30] Using SQL pivoting, it effectively displays the number of departments assigned to each project, providing valuable insights into departmental project engagement and resource distribution This approach helps organizations monitor departmental participation across various initiatives, optimizing project management and strategic planning.

VIẾT STROE PROCEDURE VÀ FUCTION

This article demonstrates how to create stored procedures and functions in SQL to manage employee age calculations and filter data efficiently It illustrates how to define a procedure to calculate age based on the current year minus a given year, such as creating `TinhTuoi` to determine age from a specific year like 2003 Additionally, it shows how to implement a procedure `TimNhanVienCoChungChiTiengAnh` that retrieves employees holding a specific English certificate, for example, 'TOEIC.' The content also covers the creation of user-defined functions like `TinhTuoi_function`, which calculates an employee's age based on their birth date, and `NhanVienCoTuoiTrongKhoang`, a function that returns a table of employees whose ages fall within a specified range, such as 45 to 50 years These examples highlight effective techniques for age calculation, filtering, and retrieving employee data in SQL to enhance database management and query performance.

TRIGGER RÀNG BUỘC DỮ LIỆU CHO CÁC BẢNG

This article discusses the implementation of database triggers to enforce data integrity across various tables For the CHUNGCHITIENGANH table, a trigger ensures that the NgayCap (issue date) is not later than the current date, maintaining logical consistency Similarly, the HOPDONGLAODONG table has a trigger that validates the NgayDamNhan (receipt date), requiring it to be on or before the present day The LUONG table includes a trigger that checks whether the HeSoLuong (salary coefficient) falls within the acceptable range of 7 to 15, safeguarding salary data accuracy Additionally, the NGAYNGHI table features a trigger that mandates the NgayNghi (leave date) must be earlier than or equal to today, ensuring reasonable leave records These triggers collectively help maintain data validity and improve database reliability.

This article discusses the implementation of database triggers to ensure data integrity and validation It details triggers on the NHANVIEN table that enforce age restrictions, requiring employees to be at least 18 years old, and validate that gender entries are either "Nam" (Male) or "Nữ" (Female) Additionally, it covers a trigger on the PHONGBAN table that validates phone numbers, insisting they are between 6 and 11 digits long and contain only numeric characters These triggers serve to maintain consistent and accurate data within the database by automatically checking and enforcing rules during data insertion and updates Incorporating such triggers enhances data quality and adheres to best practices for database management.

PHÂN QUYỀN

1) Tạo login create login nguyennamlogin with password = 'nguyennam123'

Tạo user trên database QUANLYNHANSU create user nguyennamuser for login nguyennamlogin

2) Gán quyền select bảng NHANVIEN cho nguyennamuser grant select on NHANVIEN to nguyennamuser

3) Gán quyền select, update, insert bảng PHANCONG cho nguyennamuser grant select, update, insert on PHANCONG to nguyennamuser

Ngày đăng: 12/12/2022, 08:36

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w