Tải bản đầy đủ (.docx) (24 trang)

Cơ sở dữ liệu quản lý nhân viên DB2 V9

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (578.07 KB, 24 trang )

TRƯỜNG ĐẠI HỌC KINH TẾ - KỸ THUẬT CÔNG NGHIỆP
KHOA CÔNG NGHỆ THÔNG TIN
*********************

BÀI TẬP LỚN CUỐI KỲ
MÔN: CƠ SỞ DỮ LIỆU
ĐỀ TÀI: CƠ SỞ DỮ LIỆU DB2 V9

Nhóm sinh viên thực hiện:
Nhóm trưởng: Vũ Thành Đạt - 19103100174
Thành viên 1: Phạm Quốc Trình - 19103100132
Thành viên 2: Đỗ Hữu Quân - 19103100131
Thành viên 3: Hà Thị Thanh Xuân - 19103100125
Giảng viên hướng dẫn:
Th.S. Trần Bích Thảo

Nam Định - 2021


MỤC LỤC
LỜI CẢM ƠN.............................................................................................................. 3
PHẦN I: GIỚI THIỆU TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU DB2.........................4
I: Một số Cơ sở dữ liệu phổ biến hiện nay và Ưu, nhược điểm của DB2 so với các Cơ sở dữ
liệu khác.................................................................................................................................................4
1: Một số Cơ sở dữ liệu phổ biến hiện nay:........................................................................................4
2: Ưu, nhược điểm của DB2 so với các Hệ quản trị cơ sở dữ liêu khác:...........................................5
3: Cài đặt môi trường cho DB2 V9....................................................................................................6

PHẦN II. PHÂN TÍCH VÀ XÂY DỰNG ỨNG DỤNG QUẢN LÝ NHÂN
VIÊN CỦA CÔNG TY SỮA VINA MILK TUYẾT THANH.................................12
1: Các chức năng cơ bản của hệ thống.................................................................................................12


2: Xây dựng mơ hình ER về hệ thống quản lý nhân viên....................................................................12
3: Xây dựng mơ hình cơ sở dữ liệu......................................................................................................14
3.1i

Thiết kế các file dữ liệu.........................................................................................................14

3.2i

Mơ hình quan hệ dữ liệu........................................................................................................17

PHẦN III: XÂY DỰNG CƠ SỞ DỮ LIỆU DỰA TRÊN DB2 V9…………….20
PHẦN IV. TỔNG KẾT………………………………………………………….21


LỜI CẢM ƠN
Lời đầu tiên, chúng em xin chân thành cảm ơn Giảng viên Trần Bích Thảo
đã trang bị cho chúng em những kiến thức cần thiết để chúng em có thể thực hiện
tốt bài tập. Cám ơn thầy cơ ln tận tình giúp đỡ, hướng dẫn và chỉ bảo chúng em
trong suốt quá trình học tập, nghiên cứu.
Trong thời gian làm bài tập, chúng em cũng đã nhận được rất nhiều sự giúp
đỡ, đóng góp ý kiến và chỉ bảo nhiệt tình của thầy cơ, gia đình và bạn bè. Tuy
nhiên, do còn hạn chế về mặt kiến thức, cũng như còn thiếu kinh nghiệm về nghiên
cứu, bài báo cáo của chúng em không thể tránh khỏi những sai sót. Chính vì vậy,
chúng em rất mong nhận được sự góp ý từ các thầy cơ giáo và bạn bè.
Chúng em xin chân thành cám ơn quý thầy cô giáo!

Nam Định, ngày 26 tháng 4 năm 2021
Sinh viên thực hiện
Vũ Thành Đạt
Phạm Quốc Trình

Đỗ Hữu Quân
Hà Thị Thanh Xuân


PHẦN I: GIỚI THIỆU TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU DB2
I: Một số Cơ sở dữ liệu phổ biến hiện nay và Ưu, nhược điểm của DB2 so với
các Cơ sở dữ liệu khác.
1: Một số Cơ sở dữ liệu phổ biến hiện nay:
a, Hệ quản trị cơ sở dữ liệu Oracle
Oracle là hệ quản trị cơ sở dữ liệu quan hệ đối tượng được sử dụng rộng rãi nhất.
Phiên bản mới nhất của công cụ này là 12c, trong đó c nghĩa là điện tốn đám mây.
Nó hỗ trợ nhiều phiên bản Windows, UNIX và Linux.
Một vài tính năng của Oracle RDBMS như sau:
 Nó được bảo mật.
 Chiếm khơng gian ít hơn
 Hỗ trợ cơ sở dữ liệu lớn và giảm thời gian CPU để xử lý dữ liệu.
b, Hệ quản trị cơ sở dữ liệu MySQL
Phiên bản mới nhất 8. Ngôn ngữ được sử dụng là C và C ++.
Hoạt động trên Linux, Windows.
Vài tính năng trong số này là:
 Tốc độ xử lý dữ liệu cao, việc sử dụng trình kích hoạt tăng năng suất, với
tính năng quay lại và cam kết giúp khơi phục dữ liệu nếu cần.
c, Hệ quản trị cơ sở dữ liệu Microsoft SQL Server
Được phát triển trong năm 1989. Phiên bản cập nhật mới nhất được đưa ra vào năm
2016. Ngôn ngữ được sử dụng là Assembly C, Linux, C ++ để viết nó.
Hoạt động trên hệ điều hành Linux và windows.
Một số tính năng của máy chủ MS SQL bao gồm:
 Tương thích với Oracle cung cấp quản lý hiệu quả khối lượng công việc và
cho phép nhiều người dùng sử dụng cùng một cơ sở dữ liệu.



d, Hệ quản trị cơ sở dữ liệu PostgreSQL
Đó là một cơ sở dữ liệu nâng cao hơn.Các phiên bản hiện tại là 9.6.2.
Có thể được sử dụng trên các hệ điều hành Linux và windows.
Vài tính năng trong số này là:
 Nó sử dụng cơ sở dữ liệu quan hệ đối tượng.
 Dữ liệu vẫn an toàn.
 Truy xuất dữ liệu nhanh hơn.
 Chia sẻ dữ liệu thông qua trang tổng quan nhanh hơn.
e, Hệ quản trị cơ sở dữ liệu MongoDB
Vài tính năng trong số này là:
 Đó là một cơ sở dữ liệu có thể xử lý dữ liệu lớn đồng thời và sử dụng bộ nhớ
trong để dữ liệu có thể truy cập dễ dàng, sử dụng các phép nối rất phức tạp
khơng có ở đó, việc chia tỷ lệ có thể dễ dàng.
f, Một số hệ quản trị cơ sở dữ liệu khác: Redis, Eclasticsearch, Microsoft Access,
Cassandra, Teradata,…
2: Ưu, nhược điểm của DB2 so với các Hệ quản trị cơ sở dữ liêu khác:
IBM DB2 Enterprise Server Edition là một hệ quản trị cơ sở dữ liệu quan hệ được
phát triển bởi IBM.
DB2 hiện nay là hệ thống database hoạt động mạnh và nhanh nhất thế giới. IBM
tuyên bố rằng số dữ liệu cấu trúc được lưu trong DB2 lớn hơn trong bất cứ cơ chế
nào khác.
Theo khảo sát năm 2005 của Winter Corporation, những cơ sở dữ liệu OLTP (OnLine Transaction Processing - Xử lý giao dịch trực tuyến) lớn nhất đa số nằm trong
DB2. "Giải thưởng" về khối lượng được trao cho Land Registry (23,1 TB) còn kỷ
lục về số dòng thuộc về UPS (89,6 tỷ) và cả hai cùng chạy trên DB2.
DB2 cũng đạt tốc độ xử lý mỗi phút (điểm chuẩn TPC-C) 3,2 triệu giao dịch/phút.
Đối thủ gần nhất theo chuẩn TPC là Oracle cũng chỉ có thể thực hiện bằng một nửa
DB2.
Tuy nhiên, trong các cuộc tranh luận về cơ sở dữ liệu, người ta thường nhắc đến
Oracle và SQL Server, đôi khi kể thêm Sybase hay Informix, nhưng không mấy ai

đề cập tới DB2.


DB2 có 3 phiên bản chính: DB2 cho z/OS (Mainframe), DB2 cho iSeries (AS400)
và DB2 cho LUW (Linux, UNIX và Windows). Khoảng 90% mã nguồn của các
phiên bản là giống nhau và 10% còn lại được dành riêng cho việc tối ưu hóa nền
tảng (platform). Về mặt kỹ thuật, đây là một tin tốt do hệ thống database có thể
hoạt động với bất cứ nền tảng nào mà khách hàng đang sử dụng. Tuy nhiên, IBM
dường như "quên" việc phải quảng bá rộng những điều này. Có người cho rằng họ
q hài lịng vì nắm trong tay cơ sở dữ liệu mạnh và chờ đợi mọi người tự khám
phá. Do vậy, DB2 được gọi là "secret database" (cơ sở dữ liệu ngầm).
Trở lại năm 1997, Janet Perna, Giám đốc bộ phận quản lý dữ liệu của IBM, nói
rằng họ đang theo dõi sát sao Microsoft và sẽ không để IBM bị đánh bại về mặt giá
thành. Hiện nay, SQL Server 2005 của Microsoft đã phát hành miễn phí và có khả
năng trong tương lai, một phiên bản DB2 cũng sẽ được tung ra với giá "phải chăng"
hoặc miễn phí hồn tồn.
Phiên bản 9 của DB2 cung cấp một tính năng gọi là Quản lý bộ nhớ tự điều chỉnh
(STMM), cho phép cơ sở dữ liệu tự động thay đổi cấp phát bộ nhớ khi có sự thay
đổi trong khối lượng cơng việc. Điều này tối ưu hóa hiệu suất bằng cách điều chỉnh
nhanh chóng vào bộ nhớ cơ sở dữ liệu và vùng đệm mà không yêu cầu sự can thiệp
của con người
Như vậy, ta có thể nhận thấy, những ưu điểm và nhược điểm mà DB có được:

 Ưu điểm:
-

Là cơ sở dữ liệu nhanh nhất thế giới.

-


Hỗ trợ nhiều phiên bản: UNIX, LINUX, WINDOWS.

-

Dễ dàng cài đặt, thiết lập.

-

Truy cập dữ liệu dễ dàng.

-

Tiết kiệm số lượng lớn dữ liệu.

 Nhược điểm:
-

Tính bảo mật và đảm bảo thơng tin của DB2 khơng cao.

-

Chi phí cao cho một tổ chức nhỏ.

3: Cài đặt môi trường cho DB2 V9
Bằng cách theo dõi các thủ tục này, bạn sẽ có thơng tin mà bạn cần để bắt đầu với
IBM® Rational® ClearQuest®. Các thông tin này không bao gồm các vấn đề


chun mơn và các cách sử dụng IBM® DB2® như một hệ thống quản lý cơ sở
dữ liệu ngoài việc nói cho bạn biết cách cài đặt và cấu hình nó với hai cơ sở dữ

liệu rỗng.
Nếu bạn có kinh nghiệm cài đặt DB2 trên các máy chủ dựa trên Microsoft®
Windows®, bạn có thể thấy rằng việc cài đặt và cấu hình nó trên các hệ điều hành
UNIX® sẽ hơi khó khăn một chút. Sau khi bạn sử dụng các bước này để cài đặt
DB2 trên UNIX, bạn cũng có thể sử dụng những điều bạn đã học được trong kịch
bản này như là một sự bổ sung cho việc cài đặt lần đầu các công cụ khác trên hệ
điều hành UNIX.
Chuẩn bị hệ điều hành để cài đặt
Trong các phiên bản Rational ClearQuest 7.1.2 và cao hơn, DB2 (Restricted
Enterprise Edition - Ấn bản doanh nghiệm hạn chế) được đưa vào, với nghĩa là
nếu bạn muốn sử dụng DB2 làm cơ sở dữ liệu tầng sau cho môi trường cấu hình
và thay đổi của bạn, bạn khơng phải mua các giấy phép riêng. Để biết thêm thông
tin về hỗ trợ và các điều kiện tiên quyết cho cả hai công cụ này, hãy xem phần tài
nguyên của bài này.
Để cài đặt DB2, bạn cần ba mã định danh (ID) người dùng duy nhất và các nhóm
tương ứng để quản lý cá thể DB2 và thiết lập ứng dụng. Hãy tạo các ID trên hệ
điều hành của máy tính làm máy chủ cơ sở dữ liệu của bạn. Để chọn các tên ID,
hãy xem xét ví dụ sau: dùng "db2inst" cho ID của chủ sở hữu cá thể, "db2fenc"
cho ID người dùng hàng rào, "dasusr" cho ID người dùng DAS (DB2
Administration Server - Máy chủ quản trị DB2).
Bạn cũng phải tạo ra 3 nhóm khác nhau tương ứng với mỗi ID. Để tạo các nhóm,
hãy đăng nhập như người dùng chủ (root) và chạy các lệnh sau đây. Lưu ý rằng
các ID và các nhóm trong các lệnh này là những ví dụ. Bạn có thể sử dụng quy
ước đặt tên thích hợp cho dự án hoặc tổ chức của mình.
> groupadd -g 500 db2grp
> groupadd -g 501 db2fgrp
> groupadd -g 502 dasadm
> useradd -u 100 -g db2grp -d /home/db2inst1 -s /bin/sh -p db2inst db2inst
> useradd -u 101 -g db2fgrp -d /home/db2fenc1 -s /bin/sh -p db2fenc db2fenc
> useradd -u 102 -g dasadm -d /home/dasusr1 -s /bin/sh -p dasusr dasus

Sau khi bạn tạo ra các ID người dùng và các nhóm, bạn phải thiết lập các mật
khẩu cho mỗi ID và tạo các thư mục chủ riêng cho chúng. Bạn có thể cần giúp
đỡ từ nhóm quản trị hệ thống của bạn để thực hiện các thay đổi này.


Để thiết lập lại mật khẩu, bạn phải chạy lệnh "passwd". Để thay đổi mật khẩu cho
ID db2inst:
1. Đăng nhập như người dùng chủ.
2. Nhập lệnh sau đây:
passwd db2inst
3. Lặp lại các bước để thiết lập các mật khẩu cho các tài khoản của hai người
dùng còn lại, "db2fenc" và "dasusr".
Để tạo thư mục chủ:
1. Đăng nhập vào như người dùng chủ..
2. Nhập các lệnh sau đây:
o > mkdir –p /home/db2inst o >
chmod 755 /home/db2inst o
chown
db2inst:db2grp
/home/db2inst
3. Lặp lại các bước để tạo các thư mục cho các ID "db2fenc" và "dasusr"..
Do vị trí cài đặt mặc định cho DB2 là thư mục /opt, hãy chắc chắn rằng bạn có đủ
dung lượng để cài đặt DB2. Hãy bắt đầu bằng cách phân bổ dung lượng 5 GB cho
thư mục /opt trên máy chủ cơ sở dữ liệu của bạn.
Cài đặt và cấu hình DB2
Để cài đặt DB2 trên các hệ điều hành UNIX, bạn phải được đăng nhập như là
người dùng chủ. Hãy sao chép trình cài đặt DB2 vào máy tính là máy chủ cơ sở
dữ liệu của bạn.
Chạy kịch bản lệnh db2_install để bắt đầu cài đặt DB2. Tiện ích này có sẵn trong
thư mục /root/desktop/mnt. Thư mục này có thể khác tùy theo mơi trường của bạn.


Hình 1. Bắt đầu cài đặt DB2

Kịch bản lệnh tạm dừng để bạn nhập vị trí cài đặt. Nếu bạn muốn sử dụng vị trí
cài đặt mặc định, /opt/ibm/db2/V9.5, bạn có thể chọn "no" (khơng) như trong hình
sau.


Hình 2. Nhập vị trí cài đặt cho DB2

Trong hình 2, chúng tôi đã chọn WSE làm kiểu cài đặt do WSE có các tệp mà
chúng tơi đã dùng để cài đặt. Nếu bạn sử dụng đĩa CD Cài đặt doanh nghiệp để cài
đặt DB2, ESE sẽ có sẵn như là một trong các tùy chọn.
Sau khi bạn hoàn thành cài đặt thành cơng, kết quả sau được hiển thị:

Hình 3. Cài đặt DB2 đã hoàn tất

Bây giờ bạn phải tạo cá thể DB2 và thiết lập một số tham số cần thiết.
Vì DB2 là một hệ thống quản lý cơ sở dữ liệu quan hệ, bạn phải thiết lập các tham
số nhân (kernel) cụ thể để làm việc với hệ điều hành. Để xem các yêu cầu tham số
nhân, hãy chạy lệnh db2osconf như người dùng chủ để hiển thị giá trị hiện tại của
các tham số nhân cần thiết và giá trị dự kiến của chúng.
Kết quả đầu ra giống như những gì bạn thấy trong hình 4.


Hình 4. Kết quả đầu ra của lệnh db2osconf

Tạo cá thể DB2
Sau khi bạn cài đặt DB2 thành công và thiết lập các tham số nhân, bạn phải tạo cá
thể DB2 cho các cơ sở dữ liệu bằng công cụ quản lý cấu hình và thay đổi của bạn.

Sử dụng tiện ích db2icrt để tạo cá thể đó. Đăng nhập bằng ID người dùng cá thể
mà bạn tạo ra trước đó.
Tiện ích db2icrt có sẵn trong thư mục cài đặt. Nếu bạn đã sử dụng thư mục cài đặt
mặc định, thì đường dẫn là /opt/ibm/db2/V9.5/instance

Hình 5. Tạo cá thể DB2

Sau khi bạn tạo cá thể, hãy đăng nhập là chủ sở hữu (ví dụ "db2inst") và sau đó
thực hiện các nhiệm vụ sau đây:
 Thiết lập tham số "SVCENAME", xác định cổng được sử dụng cho dịch vụ
quản lý cơ sở dữ liệu DB2.
Trong hình 6, chúng tơi đã sử dụng cổng 40000 cho dịch vụ quản lý cơ sở dữ liệu,
đây là cổng mặc định. Nếu bạn muốn sử dụng một cổng khác, hãy thay đổi nó ở
đây.


Hình 6. Cập nhật thơng tin cổng

 Thiết lập truyền thơng mặc định là TCP/IP.

Hình 7. Thiết lập giao thức truyền thơng DB2

 Khởi động lại trình quản lý cơ sở dữ liệu.
Lưu ý: Trình quản lý cơ sở dữ liệu phải được khởi động lại trong lúc đăng nhập là
chủ sở hữu cá thể. Nếu bạn đang đăng nhập là người dùng chủ, bạn sẽ không thể
khởi động lại cá thể trình quản lý cơ sở dữ liệu.

Hình 8. Khởi động lại DB2



PHẦN II. PHÂN TÍCH VÀ XÂY DỰNG ỨNG DỤNG QUẢN LÝ NHÂN
VIÊN CỦA CÔNG TY SỮA VINA MILK TUYẾT THANH.
1: Các chức năng cơ bản của hệ thống.

Quản lý hồ
sơ nhân
viên
Bổ sung
hồ sơ mới
Cập nhật
hồ sơ

Trả hồ


QUẢN LÝ NHÂN
SỰ
Quản

lương
Tính
lương
Tính phụ
cấp
Tính
lương
thực lĩnh

Tra cứu
tìm kiếm

Tra cứu
theo thơng
tin
Tra cứu
theo lương
Tra cứu
theo số
lượng tổng
hợp

Thống kê
báo cáo
Thống kê
theo
mức thu
nhập
Thống kê
theo trình
độ
Thống kê
theo đơn
vị phịng
ban

Biểu đồ phân cấp chức năng của hệ quản lý nhân sự

Qua q trình nghiên cứu, nhóm đã xây dụng được một hệ cơ sở dữ liệu quản
lý nhân sự cơ bản đáp ứng được một số yêu cầu của doanh nghiệp như sau:
- Quản lý thông tin nhân sự bao gồm đầy đủ, chi tiết về nhân sự trong doanh
nghiệp

-Theo dõi, cập nhật thường xun thơng tin nhân sự, phịng ban, tổ đội trong
DN
-Tính lương cho nhân viên theo cơng thức có sẵn hoặc cơng thức do người
sử dụng tự cập nhật vào, các chế độ đãi ngộ tương ứng.
-Quản lý các thông tin liên quan tới việc tuyển dụng nhân sự mới trong
doanh nghiệp
-Trả hồ sơ cho nhân viên khi chấm dứt hợp đồng lao động
2: Xây dựng mơ hình ER về hệ thống quản lý nhân viên.
Các thực thể và thuộc tính tương ứng:
a. NHAN VIEN (MaNV, HoTen, GioiTinh, NgaySinh, DanToc, QueQuan,
SoDienThoai)
b. PHONG BAN (MaPB, TenPhongBan, DiaChi, SoDienThoai)
c. CHUC VU (MaCV, TenCV)
d. TRINH DO HOC VAN (MaTDHV, BacTrinhDo, ChuyenNganh)
e. LUONG (BacLuong, LuongCoban, HesoLuong, HesoPhucap


Xây dựng cơ sở dữ liệu quản lý nhân sự

Mô hình E-R trong quản lý nhân sự


3: Xây dựng mơ hình cơ sở dữ liệu.
3.1i
Thiết kế các file dữ liệu
 Bảng NHAN VIEN lưu trữ thông tin về các nhân viên của công ty đang
trong hiệu lực của hợp đồng
STT

Tên trường


Kiểu

Độ rộng

Giải thích

1

MaNV

Text

10

Mã nhân viên

2

HoTen

Text

30

Họ và tên nhân
viên

3


NgaySinh

Date/Time

10

Ngày sinh

4

QueQuan

Text

20

Q qn

5

GioiTinh

Text

5

Giới tính

6


DanToc

Text

20

Dân tộc

7

SoDienthoa
i

Number

20

Số điện thoại
liên lạc

8

MaPB

Text

15

Mã phịng ban


9

MaCV

Text

15

Mã chức vụ

10

MaTDVH

Text

11

BacLuong

Number

15
10

Mã trình độ văn hóa
Bậc lương


 Bảng PHONG BAN lưu trữ các thông tin về nhiệm vụ của các phịng ban

trong tổ chức cơng ty

Stt

Tên trường

1

MaPB

Text

10

Mã phòng ban

2

TenPB

Text

30

Tên phòng ban

3

DiaChi


Text

50

Địa chỉ

4

SoDienthoaiP
B

Text

20

Số điện thoại phòng
ban



Kiểu Độ rộng

Giải thích

Bảng

CHUC VU quản lý các chức danh hiện có của kết cấu tổ chức trong công
ty
Stt Tên trường Kiểu Độ rộng


Giải thích

1

MaCV

Text

10

Mã chức vụ

2

TenCV

Text

20

Tên chức vụ

 Bảng TRINH DO HOC VAN quản lý các trình độ chun mơn đã đạt được
của nhân viên cho tới thời điểm hiện tại
Stt

Tên trường

Kiểu


Độ
rộng

Giải thích

1

MaTDHV

Text

10

Mã trình độ học vấn

2

TenTrinhDo

Text

20

Tên trình độ học vấn

3

ChuyenNganh

Text


50

Chun ngành đào
tạo

 Bảng LUONG lưu trữ thông tin về hệ số lượng và các phụ cấp của công ty


Stt

Tên Trường

Kiểu

Độ Rộng

Giải Thích

2

BacLuong

Number

10

Bậc Lương

2


LuongCoban

Number

20

Lương cơ bản

3

HesoLuong

Number

10

Hệ số lương

4

HesoPhucap

Number

10

Hệ số phụ cấp

 Bảng THOI GIAN CONG TAC dùng để lưu trữ thời gian bắt đầu đảm

nhiệm chức vụ của mỗi nhân viên
Stt

Tên trường

Kiểu

Độ rộng

Giải thích

1

MaNV

Text

10

Mã nhân viên

2

MaCV

Text

10

Mã chức vụ


20

Ngày nhậm chức

3
3.2i

NgayNhamChuc Date/Time
Mơ hình quan hệ dữ liệu

Mơ hình quan hệ dữ liệu của hệ thống quản lý nhân sự


4. Thực hiện chuẩn hóa dữ liệu
Bước 1:liệt kê các thuộc tính
17


a. NHAN VIEN(MaNV, HoTen, GioiTinh, NgaySinh, DanToc, QueQuan,
SoDienThoai)
b. PHONG BAN(MaPB, TenPhongBan, DiaChiPB, SoDienThoaiPB)
c. CHUC VU (MaCV, TenCV)
d. TRINH DO HOC VAN (MaTDHV, TenTrinhDo, ChuyenNganh)
e. LUONG (BacLuong, LuongCoban, HesoLuong, HesoPhucap)
Bước 2:Loại bỏ các thuộc tính đa trị và thuộc tính lặp
Vì trong cơ sở dữ liệu đang thực hiện chuẩn hóa khơng có thuộc tính đa trị và
thuộc tính lặp nên bỏ qua bước này,thực hiện bước 3.
Bước 3:Xây dựng các phụ thuộc hàm
Từ các thuộc tính trên ta suy ra các phụ thuộc hàm như sau:

(1) MaNV→ HoTen, DanToc, GioiTinh, QueQuan, NgaySinh ,
SoDienthoai, MaCV, TenCV, MaPB, TenPhongBan, DiaChiPB,
SoDienthoaiPB, MaTDHV, TenTDHV, ChuyenNganh, BacLuong,
LuongCoban, HesoLuong, HesoPhucap, NgayNhamChuc.
(2) MaPB → TenPhongBan, DiaChiPB, SoDienthoaiPB
(3) MaNV, MaCV→ NgayNhamChuc
(4) MaTDHV → TenTrinhDo, ChuyenNganh
(5) BacLuong → LuongCoban, HesoLuong, HesoPhucap
(6) MaCV → TenCV
K=MaNV
Bước 4: Chuẩn hóa
Coi tất cả thuộc tính thuộc quan hệ R

 Ta thấy (2) vi phạm chuẩn 3. Vậy tách R thành:
R1 ( MaPB, TenPhongBan, DiaChiPB, SoDienthoaiPB)
R2 = R\ R1. Vậy R2 (MaNV, HoTen, DanToc, GioiTinh, QueQuan, NgaySinh,
SoDienthoai, MaCV, TenCV, NgayNhamChuc, MaPB, MaTDHV, TenTDHV,
ChuyenNganh, BacLuong, LuongCoban, HesoLuong, HesoPhucap)
 Ta thấy (3) vi phạm chuẩn 3. Vậy tách R2 thành
18


R3 ( MaNV, MaCV, NgayNhamChuc)
R4 ( MaNV, HoTen, DanToc, GioiTinh, QueQuan, NgaySinh, SoDienthoai, MaCV,
TenCV, MaTDHV, TenTDHV, ChuyenNganh, BacLuong, LuongCoban,
HesoLuong, HesoPhucap, MaPB)
 Ta thấy ( 4) vi phạm chuẩn 3. Vậy tách R4 thành
R5 (MaTDHV, TenTDHV, ChuyenNganh)
R6( MaNV, HoTen, DanToc, GioiTinh, QueQuan, NgaySinh, SoDienthoai, MaCV,
TenCV, MaTDHV,BacLuong, LuongCoban, HesoLuong, HesoPhucap, MaPB)

 Ta thấy ( 5) vi phạm chuẩn 3. Tách R6 thành
R7 (BacLuong, LuongCoban, HesoLuong, HesoPhucap)
R8 (MaNV, HoTen, DanToc, GioiTinh, QueQuan, NgaySinh, SoDienthoai,
MaCV,TenCV,MaTDHV,BacLuong,MaPB)

 Ta thấy (6) vi phạm chuẩn 3. Vậy tách R8 thành
R9 (MaCV, TenCV)
R10 (MaNV, HoTen,DanToc, GioiTinh, QueQuan, NgaySinh, SoDienthoai,
MaCV, MaTDHV, BacLuong, MaPB)
Bước 5:Kết luận
è Các dạng chuẩn 3 sau
R1 ( MaPB, TenPhongBan, DiaChiPB, SoDienthoaiPB)
R3 ( MaNV, MaCV, NgayNhamChuc)
R5 ( MaTDHV, TenTDHV, ChuyenNganh)
R7 (BacLuong, LuongCoban, HesoLuong, HesoPhucap)
R9 (MaCV, TenCV)
R10 (MaNV, HoTen,DanToc, GioiTinh, QueQuan, NgaySinh, SoDienthoai, MaCV,
MaTDHV, BacLuong, MaPB)

19


PHẦN III: XÂY DỰNG CƠ SỞ DỮ LIỆU DỰA TRÊN DB2 V9.
Hình 1. Tạo một cơ sở dữ liệu rỗng trong DB2

Đăng nhập là chủ sở hữu cá thể vào máy chủ cơ sở dữ liệu ở nơi DB2 được cài đặt
và chạy các lệnh sau:
1. Kết nối cơ sở dữ liệu bằng cách chạy lệnh kết nối.
Hình 2. Kết nối tới các cơ sở dữ liệu


2. Tạo vùng bộ đệm và vùng bảng cho cơ sở dữ liệu.
Hình 3. Tạo vùng bộ đệm

Hình 4. Tạo vùng bảng

Lặp lại các bước sau để tạo ra một cơ sở dữ liệu rỗng thứ hai.
20


Khi bạn có hai cơ sở dữ liệu rỗng của mình trong DB2, sau đó bạn có thể tạo ra kho
lưu trữ lược đồ và các cơ sở dữ liệu người dùng trong Rational ClearQuest.
Kiểm tra kết nối giữa các cơ sở dữ liệu và máy khách
Trước khi bạn tạo kho lưu trữ lược đồ, hãy xác nhận hợp lệ kết nối đến cá thể cơ sở
dữ liệu bằng cách sử dụng tiện ích pdsql có sẵn trong Rational ClearQuest.
> pdsql -v db2 –s <database server ip / hostname> -db <database-name> -u db2inst
–p db2inst
Nếu lệnh này chạy thành cơng, có nghĩa là cơ sở dữ liệu có thể truy cập từ máy
khách quản lý cấu hình và thay đổi, nơi bạn đang tạo kho lưu trữ lược đồ.
Khi bạn tạo kho lưu trữ lược đồ, hãy chọn "DB2" làm nhà cung cấp cơ sở dữ liệu và
"db2inst" là chủ sở hữu cá thể. Để biết thông tin về cách tạo kho lưu trữ lược đồ và
cơ sở dữ liệu người dùng, xem phần tài nguyên của bài này.
3: Tạo bảng cho CSDL
 Bảng PhongBan (Phòng Ban)
CREATE TABLE PhongBan(
MaPhongBan INT GENERATED BY DEFAULT AS IDENTITY NOT NULL,
TenPhongBan VARCHAR(20) NOT NULL,
DiaChi VARCHAR(50) NOT NULL,
SoDienThoaiPB VARCHAR(20) NOT NULL,
PRIMARY KEY(MaPhongBan)
);


 Bảng ChucVu (Chức Vụ)
CREATE TABLE ChucVu(
MaChucVu INT GENERATED BY DEFAULT AS IDENTITY NOT NULL,
TenChucVu VARCHAR(20) NOT NULL,
PRIMARY KEY(MaChucVu)
);

 Bảng TDHV (Trình độ học vấn)
CREATE TABLE TDHV(
21


MaTDHV INT GENERATED BY DEFAULT AS IDENTITY NOT NULL,
TenTrinhDo VARCHAR(20) NOT NULL,
ChuyenNganh VARCHAR(20) NOT NULL,
PRIMARY KEY(MaTDHV)
);

 Bảng Luong (Lương)
CREATE TABLE Luong(
BacLuong INT GENERATED BY DEFAULT AS IDENTITY NOT NULL,
LuongCoBan FLOAT,
HeSoLuong FLOAT,
HeSoPhuCap FLOAT,
PRIMARY KEY(BacLuong)
);

 Bảng TGCT (Thời gian công tác)
CREATE TABLE TGCT(

MaNhanVien INT NOT NULL,
MaChucVu INT NOT NULL,
NgayNhamChuc DATE,
PRIMARY KEY(MaNhanVien)
);

 Bảng NhanVien (Nhân viên)
CREATE TABLE NhanVien(
MaNhanVien INT GENERATED BY DEFAULT AS IDENTITY NOT NULL,
HoTen VARCHAR(10) NOT NULL,
NgaySinh DATE NOT NULL,
QueQuan VARCHAR(100) NOT NULL,
GioiTinh VARCHAR(3) NOT NULL,
DanToc VARCHAR(10) NOT NULL,
SoDienThoai VARCHAR(10) NOT NULL,
MaPhongBan INT NOT NULL,
MaChucVu INT NOT NULL,
MaTDHV INT NOT NULL,
22


BacLuong FLOAT NOT NULL,
PRIMARY KEY(MaNhanVien),
CONSTRAINT fk_PhongBan
FOREIGN KEY(MaPhongBan)
REFERENCES PhongBan(MaPhongBan) ON DELETE CASCADE,
CONSTRAINT fk_ChucVu
FOREIGN KEY(MaChucVu)
REFERENCES ChucVu(MaChucVu) ON DELETE CASCADE,
CONSTRAINT fk_TDHV

FOREIGN KEY(MaTDHV)
REFERENCES TDHV(MaTDHV) ON DELETE CASCADE,
CONSTRAINT fk_BacLuong
FOREIGN KEY(BacLuong)
REFERENCES Luong(BacLuong) ON DELETE CASCADE
);

PHẦN IV. TỔNG KẾT
Cơ sở dữ liệu được xây dựng bằng hệ quản trị cơ sở dữ liệu DB2-V9 sẽ tối ưu được
thời gian truy suất dữ liệu nhưng vẫn giữ được các thao tác dữ liệu được sử dụng cơ
bản như:
1. Đối với người quản trị:thêm,bớt,sửa thơng tin nhân viên;tìm kiếm nhân viên
theo mã,tên…;Kiểm tra tình trạng nhân viên…
2. Đối với nhân viên:tìm kiếm thơng tin theo mã,tên;Tra cứu thơng tin bảng
lương…
Tất cả dữ liệu và các câu lệnh trong cơ sở dữ liệu đã được lưu trong link dưới đây:
23


 />
Em xin chân thành cảm ơn nhà trường, khoa chun mơn và Giảng viên
Trần Bích Thảo đã tạo điều kiện thuận lợi cho chúng em hoàn thành bài tập lớn
cuối kỳ. Em cũng cảm ơn cơ vì đã theo dõi hết bài tập của em.
Em xin chân thành cảm ơn!

Nam Định, ngày 26 tháng 4 năm 2021

24




×