1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng cơ sở dữ liệu hệ thống quản lý khách sạn

30 0 0
Tài liệu đã được kiểm tra trùng lặp

Đ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 Cơ Sở Dữ Liệu Hệ Thống Quản Lý Khách Sạn
Tác giả Nguyễn Hoàng Anh, Trần Văn Hùng, Đỗ Thị Mai, Trần Quang Quý, Lê Xuân Thịnh
Trường học Trường Đại Học Công Nghệ Đông Á
Chuyên ngành Công Nghệ Thông Tin
Thể loại Bài Tập Lớn
Năm xuất bản 2023
Thành phố Bắc Ninh
Định dạng
Số trang 30
Dung lượng 5,13 MB

Nội dung

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG ÁKHOA: CÔNG NGHỆ THÔNG TIN BÀI TẬP LỚN HỌC PHẦN: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU VỚI ORACLE TÊN ĐỀ TÀI: XÂY DỰNG CƠ SỞ DỮ LIỆU HỆ THỐNG QUẢ

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á

KHOA: CÔNG NGHỆ THÔNG TIN

BÀI TẬP LỚN

HỌC PHẦN: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU VỚI ORACLE

TÊN ĐỀ TÀI: XÂY DỰNG CƠ SỞ DỮ LIỆU HỆ THỐNG QUẢN LÝ

KHÁCH SẠN

Sinh viên thực hiện Lớp Khóa

Nguyễn Hoàng Anh DCCNTT12.10.9 12

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á

KHOA: CÔNG NGHỆ THÔNG TIN

BÀI TẬP LỚNHỌC PHẦN: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU VỚI ORACLE

NHÓM: 3 TÊN ĐỀ TÀI: XÂY DỰNG CƠ SỞ DỮ LIỆU HỆ THỐNG QUẢN LÝ

KHÁCH SẠN

STT Sinh viên thực hiện Mã sinh viên Điểm bằng số Điểm bằng chữ

1 Nguyễn Hoàng Anh 20212743

Trang 3

MỤC LỤC

MỤC LỤC 1

MỤC LỤC HÌNH ẢNH 3

LỜI NÓI ĐẦU 4

CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN ĐỀ TÀI 5

1.1 Giới thiệu đề tài 5

1.2 Các thực thể 5

1.3 Mối quan hệ thực thể 6

CHƯƠNG 2: XÂY DỰNG CƠ SỞ DỮ LIỆU 7

2.1 Thiết kế các bảng 7

2.1.1 Bảng nhân viên 7

2.1.2 Bảng khách hàng 7

2.1.3 Bảng phòng 8

2.1.4 Bảng hóa đơn 8

2.1.5 Bảng dịch vụ 8

2.1.6 Bảng thanh toán 9

2.1.7 Bảng phòng 9

2.2 Xây dựng các ràng buộc, liên kết 10

2.2.1 Liên kết 10

2.2.2 Ràng buộc 15

2.3 Nhập dữ liệu 15

2.3.2 Nhập dữ liệu cho bảng khách hàng 16

2.3.4 Nhập dữ liệu cho bảng hóa đơn 17

2.3.5 Nhập dữ liệu cho bảng dịch vụ 17

2.3.6 Nhập dữ liệu cho bảng thanh toán 17

2.4 Code trên SQL 18

CHƯƠNG 3: THIẾT KẾ CÁC CÂU TRUY VẤN (SQL) 19

3.1 Truy vấn cơ bản 19

3.1.1 Lấy thông tin tất cả các phòng đang trống 19

3.1.2 Lấy thông tin tất cả các dịch vụ có giá dưới 5000 19

3.2 Truy vấn lồng nhau 19

Trang 4

3.3 Truy vấn gộp nhóm 19

3.4 Truy vấn nâng cao 19

CHƯƠNG 4: LẬP TRÌNH PLSQL 20

4.1 Lập trình một số lệnh IF, for, while 20

4.1.1 Hàm kiểm tra hóa đơn khách hàng 20

4.1.2 Thủ tục xóa đặt phòng 20

4.2 Một số thủ tục 21

4.2.1 Hàm kiểm tra trạng thái phòng 21

4.2.2 Thủ tục cập nhật trạng thái phòng 22

4.3 Một số hàm 22

4.3.1 Hàm kiểm tra khách hàng đã thanh toán hay chưa 22

CHƯƠNG 5: QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE 24

5.1 Quản lý Instance 24

5.2 Quản lý Tablespace 24

5.3 Quản trị người dùng 24

5.4 Sao lưu, phục hồi 24

CHƯƠNG 6: PHÁT TRIỂN ỨNG DỤNG ORACLE VỚI CÔNG CỤ 25

6.1 Giới thiệu công cụ 25

6.1.1 Oracle 25

6.2 Thiết kế giao diện 25

6.2.1 Giao diện chính 26

6.2.2 Giao diện thông báo cập nhật dữ liệu thành công 26

6.3 Thiết kế chương trình 26

CHƯƠNG 7: KẾT LUẬN 27

7.1 Kết quả đạt được 27

7.2 Hạn chế 27

7.3 Hướng phát triển 27

TÀI LIỆU THAM KHẢO 28

Trang 5

MỤC LỤC HÌNH ẢNH

Trang 6

LỜI NÓI ĐẦU

Cùng với sự phát triển không ngừng về kỹ thuật máy tính và mạng điện tử,công nghệ thông tin cũng đạt được rất nhiều những thành tựu to lớn, góp công rấtlớn trong công cuộc xây dựng và phát triển xã hội của nhân loại Ngày nay, CôngNghệ Thông Tin có những bước phát triển mạnh mẽ, ứng dụng trong nhiều lĩnh vựcđời sống và hiệu quả mang lại là không thể phủ nhận, giúp giảm thiểu tối đa cáckhâu làm việc thủ công kém hiệu quả chính xác của con người trước kia Máy tínhđiện tử trở nên phổ biến và gần gũi với mọi người, việc tiếp cận với Hệ thốngThông tin quản lý trở thành mục tiêu hàng đầu của các tổ chức, doanh nghiệp chomục đích quản thông tin của mình

Trong hoạt động sản xuất, kinh doanh, giờ đây, thương mại điện tử đã khẳngđịnh được vai trò xúc tiến và thúc đẩy sự phát triển của các doanh nghiệp trong cáckhâu sản xuất cũng như quản lý Đối với một khách sạn hệ thống thông tin Quản lýtrong quản lý Khách sạn được xây dựng nhằm giải quyết nhu cầu về quản lý trongKhách sạn Hệ thống sẽ giúp các doanh nghiệp xử lý công việc chính xác, nhanhchóng, tiết kiệm chi phí, nhân lực, mặt khác còn quảng bá hình ảnh của Khách sạnđến với bạn bè trong và ngoài Tỉnh, trong Nước và Quốc tế! Khả năng tương tác,liên doanh với các Hệ thống Khách sạn khác trong cùng lĩnh vực hoạt động là rấtcao Hệ thống Thông tin Quản lý sẽ khắc phục được những nhược điểm yếu kémtrong quản lý Khách sạn hiện tại, có khả năng nâng cấp và mở rộng nhiều chứcnăng trong tương lai Đề tài là một yêu cầu thiết thực trong quản lý của các kháchsạn đang hoạt động hiện nay, do nhu cầu ngày càng tăng về số lượng khách du lịch,

số lượng dịch vụ phục vụ, sự cạnh tranh thương mại, tiết kiệm chi phí hoạt động vàquan trọng hơn là sự hoạt động chính xác và hiệu quả trong quản lý mới là cái quantrọng quyết định sự thành công trong hoạt động kinh doanh của Khách sạn Là mộtcách kiểm tra hiệu quả nhất những kiến thức đã học và là một cách tiếp cận với

Trang 7

CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN ĐỀ TÀI

1.1 Giới thiệu đề tài

Hầu hết khách sạn vẫn đang sử dụng phương thức quản lý cũ đó là: sử dụng

số sách, giấy tờ kết hợp với Microsoft Excel để tính toán Tuy nhiên, phương phápquản lý đó lại có rất nhiều hạn chế như: mất quá nhiều thời gian để quản lý; thấttoán doanh thu, chi phí tốn kém; không thể nắm bắt được chính xác lượt kháchnghỉ, thời lượng nghỉ, gặp vấn đế trong việc quản lý nhân viên… Hiện nay, trên thịtrường có rất nhiều phần mềm quản lý khách sạn với rất nhiều tính năng với nhữngmức giá khác nhau Tuy nhiên, để lựa chọn được hệ thống quản lý tối ứu nhất, phùhợp nhất với bài toán quản lý của khách sạn lại là điều làm cho nhà quản lý hết sứctrăn trở Sử dụng hệ thống quản lý khách sạn là giải pháp đang được rất nhiều nhàquản lý khách sạn tin tưởng sử dụng Và việc ứng dụng công nghệ vào nghiệp vụquản lý ngày càng phổ biến và đã trở thành một lợi thế cạnh tranh

1.2 Các thực thể

 Quản lý khách hàng:

Mỗi khách hàng của khách sạn đều được khách sạn quản lý những thông tinsau: Họ tên, giới tính, địa chỉ, điện thoại, số CMND hoặc Passport (hoặc các vănbằng khác có hình)

 Quản lý phòng:

Các phòng của khách sạn được quản lý dựa vào phòng số, loại phòng, trạngthái, giá cơ bản Khách sạn gồm có các loại phòng tương ứng với giá

 Quản lý đăng ký – thuê phòng:

Tất cả các thông tin đăng ký thuê phòng đều được quản lý dựa trên người đặtphòng, họ tên khách đăng ký, thời gian đặt phòng, thời gian trả phòng, số tiền thanhtoán và trạng thái thanh toán

 Quản lý tài khoản nhân viên:

Trang 8

Tất cả những nhân viên làm việc tại khách sạn đều được quản lý các thôngtin sau: Họ nhân viên, Tên nhân viên, Chức vụ của nhân viên.

 Quản lý dịch vụ:

Khách sạn còn quản lý thông tin về dịch vụ: tên dịch vụ, giá tiền, đơn vị Tạikhách sạn có nhiều loại dịch vụ như: điện thoại, ăn uống, giặt ủi, đưa đón khách,chuyên chở đồ cho khách (khi khách yêu cầu)…

1.3 Mối quan hệ thực thể

 Khi khách hàng có nhu cầu ở khách sạn thì khách hàng có thể liên hệ với kháchsạn để tiến hành làm thủ tục đăng ký phòng hoặc khách hàng có thể làm thủ tụcthuê và nhận phòng để ở ( trường hợp phòng còn trống ) Có hai hình thức liênhệ: đến trực tiếp, qua điện thoại

 Khi khách hàng làm thủ tục đăng ký thì khách hàng phải khai báo đầy đủ thôngtin về mình cũng như thông tin về cơ quan (nếu có) khi Bộ phận Lễ tân (BPTL)yêu cầu Hầu hết khách hàng đều phải đặt cọc một số tiền nhất định dựa vào loạiphòng mà mình đã đăng ký

 Trường hợp các tổ chức thuê phòng thì tổ chức sẽ cử đại diện đến khách sạn làmthủ tục đăng ký

 Trong thời gian trước ngày nhận phòng tối thiểu là 1 tuần các khách hàng đăng

ký theo đoàn phải gửi cho khách sạn danh sách các thành viên để khách sạnphân bố phòng cho hợp lý

Trang 9

CHƯƠNG 2: XÂY DỰNG CƠ SỞ DỮ LIỆU2.1 Thiết kế các bảng

2.1.1 Bảng nhân viên

CREATE TABLE NhanVien (

MaNhanVien VARCHAR2(50) PRIMARY KEY, HoTen VARCHAR2(255),

CREATE TABLE KhachHang (

MaKhachHang VARCHAR2(50) PRIMARY KEY, HoTen VARCHAR2(255),

Trang 10

2.1.3 Bảng phòng

CREATE TABLE Phong (

MaPhong VARCHAR2(50) PRIMARY KEY,

CREATE TABLE HoaDon (

MaHoaDon VARCHAR2(50) PRIMARY KEY,

MaKhachHang VARCHAR2(50) REFERENCES KhachHang(MaKhachHang), MaNhanVien VARCHAR2(50) REFERENCES NhanVien(MaNhanVien), NgayThanhToan VARCHAR2(255),

TongTien NUMBER(10, 2)

);

2.1.5 Bảng dịch vụ

CREATE TABLE DichVu (

MaDichVu VARCHAR2(50) PRIMARY KEY,

TenDichVu VARCHAR2(255),

GiaDichVu NUMBER(10, 2),

MaPhong VARCHAR2(50) REFERENCES Phong(MaPhong)

);

Trang 11

2.1.6 Bảng thanh toán

CREATE TABLE ThanhToan (

MaThanhToan VARCHAR2(50) PRIMARY KEY,

MaHoaDon VARCHAR2(50) REFERENCES HoaDon(MaHoaDon),

MaDichVu VARCHAR2(50) REFERENCES DichVu(MaDichVu),

SoLuong NUMBER(10, 2),

ThanhTien NUMBER(10, 2)

);

2.1.7 Bảng phòng

CREATE TABLE DatPhong (

MaDatPhong VARCHAR2(50) PRIMARY KEY,

MaKhachHang VARCHAR2(50) REFERENCES KhachHang(MaKhachHang), MaPhong VARCHAR2(50) REFERENCES Phong(MaPhong),

NgayDatPhong VARCHAR2(255),

NgayNhanPhong VARCHAR2(255),

NgayTraPhong VARCHAR2(255)

);

Trang 12

2.2 Xây dựng các ràng buộc, liên kết 2.2.1 Liên kết

Trang 17

2.2.2 Ràng buộc

2.3 Nhập dữ liệu

2.3.1 Nhập dữ liệu cho bảng nhân viên

INSERT INTO NhanVien VALUES ('NV01', 'Nguyen Van A', 'nam','15/01.1990', '123 duong ABC, Quan 1, TP.HCM', '0123456789', 'Quan ly', 8000);INSERT INTO NhanVien VALUES ('NV02', 'Tran Thi B', 'nu', '20/15/1985','456 duong XYZ, Quan 2, HA NOI', '0987654321', 'Le tan', 4000);

Trang 18

INSERT INTO NhanVien VALUES ('NV03', 'Le Van C', 'nam','10/03/1996', '789 duong DEF, Qu?n 3, NGHE AN', '0123998877', 'Phuc vu',3200);

INSERT INTO NhanVien VALUES ('NV04', 'Pham Van D', 'nam','05/12/2002', '321 duong GHI, Quan 4, THANH HOA', '0932123456', 'Ke toan',4500);

INSERT INTO NhanVien VALUES ('NV05', 'Hoang Van E', 'nam','25/07/2003', '567 duong KLM, Qu?n 5, TP.HCM', '0909123456', 'Bao ve', 2800);SELECT * FROM NhanVien;

2.3.2 Nhập dữ liệu cho bảng khách hàng

INSERT INTO KhachHang VALUES ('KH01', 'Nguyen Van X', 'nam','12/06/1980', '123 duong ABC, Quan 1, TP.HCM', '0123456780','vanx@example.com');

INSERT INTO KhachHang VALUES ('KH02', 'Tran Thi Y', 'nu','28/02/1990', '456 duong XYZ, Quan 2, VINH PHUC', '0987654322','thiy@example.com');

INSERT INTO KhachHang VALUES ('KH03', 'Le Van Z', 'nam','15/09/2002', '789 duong DEF, Quan 3, HA NOI', '0123998888','vanz@example.com');

INSERT INTO KhachHang VALUES ('KH04', 'Pham Van M', 'nam','03/11/1996', '321 duong GHI, Quan 4, HA NOI', '0932123455','vanm@example.com');

INSERT INTO KhachHang VALUES ('KH05', 'Hoang Van N', 'nam','08/01/2002', '567 duong KLM, Quan 5, HAI DUONG', '0909123455','vann@example.com');

2.3.3 Nhập dữ liệu cho bảng phòng

Trang 19

INSERT INTO Phong VALUES ('P03', 'Phong gia dinh', 200, 'Trong');INSERT INTO Phong VALUES ('P04', 'Phong Vip', 250, 'Trong');

INSERT INTO Phong VALUES ('P05', 'Suite', 300, 'Trong');

SELECT * FROM Phong;

2.3.4 Nhập dữ liệu cho bảng hóa đơn

INSERT INTO HoaDon VALUES ('HD01', 'KH01', 'NV01', '01/10/2023', 150);INSERT INTO HoaDon VALUES ('HD02', 'KH02', 'NV02', '02/10/2023',200);

INSERT INTO HoaDon VALUES ('HD03', 'KH03', 'NV03', '03/10/2023',250);

INSERT INTO HoaDon VALUES ('HD04', 'KH04', 'NV04', '04/10/2023',300);

INSERT INTO HoaDon VALUES ('HD05', 'KH05', 'NV05', '05/10/2023',350);

SELECT * FROM HoaDon;

2.3.5 Nhập dữ liệu cho bảng dịch vụ

INSERT INTO DichVu VALUES ('DV1', 'Dich vu 1', 100, 'P01');

INSERT INTO DichVu VALUES ('DV2', 'Dich vu 2', 200, 'P02');

INSERT INTO DichVu VALUES ('DV3', 'Dich vu 3', 300, 'P03');

INSERT INTO DichVu VALUES ('DV4', 'Dich vu 4', 400, 'P04');

INSERT INTO DichVu VALUES ('DV5', 'Dich vu 5', 500, 'P05');

SELECT * FROM DichVu;

2.3.6 Nhập dữ liệu cho bảng thanh toán

INSERT INTO Thanhtoan VALUES ('TT01', 'HD01', 'DV1', 2, 1000);

INSERT INTO Thanhtoan VALUES ('TT02', 'HD02', 'DV2', 3, 2000);INSERT INTO Thanhtoan VALUES ('TT03', 'HD03', 'DV3', 1, 2500);INSERT INTO Thanhtoan VALUES ('TT04', 'HD04', 'DV4', 2, 1200);

Trang 20

SELECT * FROM Thanhtoan;

Trang 21

CHƯƠNG 3: THIẾT KẾ CÁC CÂU TRUY VẤN (SQL)3.1 Truy vấn cơ bản

3.1.1 Lấy thông tin tất cả các phòng đang trống

Trang 22

CHƯƠNG 4: LẬP TRÌNH PLSQL

4.1 Lập trình một số lệnh IF, for, while

4.1.1 Hàm kiểm tra hóa đơn khách hàng

KiemTraHoaDonKhachHang(p_MaKhachHang VARCHAR2) RETURNVARCHAR2 IS

Trang 23

DELETE FROM HoaDon WHERE MaHoaDon = rec.MaHoaDon;

4.2.1 Hàm kiểm tra trạng thái phòng

CREATE OR REPLACE FUNCTION KiemTraTrangThaiPhong(

Trang 24

SELECT kiemtratrangthaiphong('P01') FROM dual;

4.3.1 Hàm kiểm tra khách hàng đã thanh toán hay chưa

KiemTraKhachHangDaThanhToan(p_MaKhachHang VARCHAR2) RETURNVARCHAR2 IS

tonTai NUMBER;

BEGIN

SELECT COUNT(*) INTO tonTai

Trang 26

CHƯƠNG 5: QUẢN TRỊ CƠ SỞ DỮ LIỆU ORACLE5.1 Quản lý Instance

5.2 Quản lý Tablespace

5.3 Quản trị người dùng

5.4 Sao lưu, phục hồi

Trang 27

CHƯƠNG 6: PHÁT TRIỂN ỨNG DỤNG ORACLE VỚI CÔNG CỤ

6.1 Giới thiệu công cụ

6.1.1 Oracle

Oracle là một trong những nhà cung cấp phần mềm, hệ thống và công nghệ

cơ sở dữ liệu lớn nhất trên thị trường công nghệ hiện nay Cái tên Oracle chính làtên viết tắt từ sản phẩm chủ lực của hãng, hệ thống quản lý cơ sở dữ liệu quan hệ(RDBMS) có tên chính thức là Oracle Database Phần mềm cơ sở dữ liệu thườnggiữ vị trí trung tâm trong mảng IT của công ty, hỗ trợ nhiều nhiệm vụ khác nhaugồm xử lý giao dịch, business intelligence (BI), và các ứng dụng phân tích

Ưu điểm:

 Tính linh hoạt

 Hiện diện thị trường

 Thay đổi phiên bản

 Sao lưu và phục hồi

 Hiệu suất

 Hỗ trợ con trỏ

 Hỗ trợ nhiều cơ sở dữ liệu

 Declarative Integrity

Với những ưu điểm và tính tính bảo mật cao, Oracle là một hệ quản trị cơ sở

dữ liệu hợp lí nhất với mục tiêu xây dựng Phần mềm quản lý khách sạn của bài tậplớn nhóm em

6.2 Thiết kế giao diện

Ứng dụng quản lý được xây dựng sử dụng công nghệ PHP LaravelFamework và hệ quản trị cơ sở dữ liệu Oracle

Trang 28

6.2.1 Giao diện chính

6.2.2 Giao diện thông báo cập nhật dữ liệu thành công

6.3 Thiết kế chương trình

Trang 29

CHƯƠNG 7: KẾT LUẬN

7.1 Kết quả đạt được

 Xây dựng được mô hình cơ sở dữ liệu quản lý khách sạn với các thực thểchính: Nhân viên, Khách hàng, Phòng, Hóa đơn, Dịch vụ

 Thiết kế và tạo các bảng dữ liệu trong CSDL để lưu trữ dữ liệu

 Nhập dữ liệu mẫu cho các bảng để phục vụ testing

 Viết được các truy vấn SELECT để lấy dữ liệu cần thiết từ CSDL

 Xây dựng được một số hàm, thủ tục đơn giản để xử lý dữ liệu

7.2 Hạn chế

 Các hàm, thủ tục được viết còn đơn giản, chưa xử lý được nhiều nghiệp vụphức tạp

7.3 Hướng phát triển

 Tối ưu hóa các truy vấn, sử dụng index để tăng hiệu năng hệ thống

 Mở rộng các hàm, thủ tục để bao phủ nhiều nghiệp vụ phức tạp hơn

 Bổ sung thêm các tính năng báo cáo, thống kê dữ liệu

Trang 30

TÀI LIỆU THAM KHẢO

Ngày đăng: 23/12/2024, 12:41