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

bài tập lớn xây dựng csdl quản lý khách sạn

18 4 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 CSDL quản lý khách sạn
Tác giả Trần Văn Tâm
Người hướng dẫn Đặng Trần Long
Trường học Trường Đại học Công nghệ Đông Á
Chuyên ngành Cơ sở dữ liệu
Thể loại Bài tập lớn
Năm xuất bản 2021
Thành phố Bắc Ninh
Định dạng
Số trang 18
Dung lượng 773,63 KB

Nội dung

Một trong những ngành dịch vụ đang phát triển mạnh đó là dịch vụ khách sạn.. Số lượng quy mô các khách sạn này càng tăng hứa hẹn rất nhiều cơ hội nghề nghiệp của nhà quản lý.. Tiềm năng

Trang 1

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

BÀI TẬP LỚN

HỌC PHẦN: CƠ SỞ DỮ LIỆU 2

TÊN BÀI TẬP LỚN: XÂY DỰNG CSDL QUẢN LÝ KHÁCH SẠN

Tên sinh viên thực hiện: Trần Văn Tâm

Lớp: CNTT 3

Khóa: K11

Khoa: Công nghệ thông tin

Giảng viên: Đặng Trần Long

Bắc Ninh, ngày 25 tháng 12 năm 2021

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á

BÀI TẬP LỚN

HỌC PHẦN: CƠ SỞ DỮ LIỆU 2

Trần Văn Tâm

TÊN BÀI TẬP LỚN: XÂY DỰNG CSDL QUẢN LÝ KHÁCH SẠN

DANH MỤC THÀNH VIÊN

hiện

bằng số bằng chữ Điểm

1 Trần Văn Tâm K11 CNTT 3 20201125

CÁN BỘ CHẤM 1 CÁN BỘ CHẤM 2

(Ký và ghi rõ họ tên) (Ký và ghi rõ họ tên)

Bắc Ninh, ngày 25 tháng 12 năm 2021

Trang 3

KẾ HOẠCH THỰC HIỆN

kiến

Ngày hoàn thành

1 Làm báo cáo trên word 25/12/2021 25/12/2021

2 Thiết kế powerpoint 25/12/2021 25/12/2021

3 Thiết kế Database trên SQL 20/12/2021 25/12/2021

Trang 4

MỤC LỤC

LỜI NÓI ĐẦU 1

I Nội Dung 2

1 Lược đồ Thực thể-Quan hệ ( Entity-Relationship Diagram E-RD) 2

Các thuộc tính của thực thể: 2

2 Thiết Kế Database (Database Design) 5

Mối quan hệ giữa các bảng: 9

II Thực Hiện Câu Lệnh Truy Vấn 10

III Chạy thử và đánh giá kết quả 14

IV Tài Liệu Tham Khảo 14

Trang 5

1

LỜI NÓI ĐẦU

Hiện nay nền kinh tế đang chuyển dịch dần sang các ngành dịch vụ Một trong những ngành dịch vụ đang phát triển mạnh đó là dịch vụ khách sạn Số lượng quy mô các khách sạn này càng tăng hứa hẹn rất nhiều cơ hội nghề nghiệp của nhà quản lý

Tiềm năng của nghề quản lý khách sạn :

Theo ước tính của ngành du lịch, từ nay đến năm 2010, Việt Nam sẽ đón và phục vụ 5,5 đến 6 triệu lượt khách du lịch quốc tế và khoảng 25 đến 26 triệu lượt khách nội địa Như vậy, trong tương lai gần, số lượng khách sạn sẽ nhiều gấp ba lần hiện tại Cùng với đó, quản

lý khách sạn (QLKS) trở thành một trong những công việc hứa hẹn nhiều cơ hội

Cần phải khẳng định đây là nghề cao cấp Khi tham gia làm QLKS chắc chắn bạn sẽ có một môi trường làm việc lịch sự, văn minh, giao thiệp rộng, có nhiều cơ hội lý tưởng để phát triển nghề nghiệp Điều này không phải ai cũng có được trong cuộc sống

Nghề QLKS sẽ đem lại cho bạn một khoản thu nhập cao hơn rất nhiều so với mặt bằng chung của xã hội và hoàn toàn tương xứng với năng lực làm việc của bạn Khi làm nghề QLKS, bạn có nhiều cơ hội thăng tiến trong nghề nghiệp Không phải ai cũng ở vị trí của nhà quản lý ngay từ những ngày đầu tiên Nhưng nếu bạn quyết tâm, kiên trì và có khả năng thực sự thì bạn sẽ là một nhà quản lý thực thụ Nghề QLKS không bao giờ thiếu chỗ đứng trong xã hội mà ngày càng quan trọng hơn Chúng ta đều có thể nhìn ra tiềm năng của nó trong nền kinh tế hiện nay

Việc áp dụng công nghệ khoa học vào quản lý khách sạn có vai trò quan tr trong quản

lý và kinh doanh Dựa vào kiến thức đã học trên nhà trường, em xin trình bày thiết kế cơ

sở dữ liệu quản lý khách sạn trên SQL Sever

Tuy có nhiều cố gắng nhưng không thể tránh được sai sót, mong quý thầy cô đóng góp

ý kiến để bài được hoàn thiện hơn Em xin trân thành cảm ơn !!!

Trang 6

2

I.Nội Dung

Các thuộc tính của thực thể:

+Thực thể KhachHang:

Trang 7

3

+ Thực thể NhanVien:

+ Thực thể Phong:

Trang 8

4

+ Thực thể DichVu:

+ Thực thể HoaDon:

Trang 9

5

2 Thiết Kế Database (Database Design)

+ Table KhachHang:

Tính chất Tên trường Kiểu dữ liệu Kích cỡ Chú thích

Primary key MaKH int Mã Khách Hàng

Auto-Increment

TenKH varchar 50 Tên Khách Hàng

SoCCCD varchar 25 Số căn cước SDT varchar 20 Số điện thoại

+ Table NhanVien:

Tính chất Tên trường Kiểu dữ liệu Kích cỡ Chú thích

Primary key MaNV int Mã Nhân Viên

Auto-Increment

TenNV varchar 50 Tên Nhân Viên

NgaySinh varchar 25 Ngày Sinh

ChucVu varchar 25 Chức vụ SDT varchar 20 Số điện thoại DiaChi varchar 150 Địa chỉ NV

Trang 10

6

+ Table Phong:

Tính chất Tên trường Kiểu dữ liệu Kích cỡ Chú thích

Primary key MaPhong int Mã Khách Hàng

Auto-Increment

TenPhong varchar 30 Tên Khách Hàng

LoaiPhong varchar 25 Loại Phòng GiaPhong money Gia Phong

+ Table DichVu:

Tính chất Tên trường Kiểu dữ liệu Kích cỡ Chú thích

Primary key MaDV int Mã Dịcg vụ

Auto-Increment

TenDV varchar 50 Tên Dịch vụ GiaTien money Giá dịch vụ

Trang 11

7

+ Table HoaDon:

Tính chất Tên trường Kiểu dữ liệu Kích cỡ Chú thích

Primary key MaHD int Mã Khách Hàng

Auto-Increment

Foreign key MaKH int Tham chiếu đến KhachHang

ThanhTien money Thành tiền

TrangThai tinyint Trạng Thái 0-Chưa xử lý

1-Đang xử lý 2-Đã xử lý

+ Table ThanhToan:

Tính chất Tên trường Kiểu dữ liệu Kích cỡ Chú thích

Foreign MaHD int Tham chiếu dến

key Foreign MaNV int Tham chiếu đến

NgayLap date Ngày lập hóa đơn

HinhThucTT varchar 50 Hình thức thanh toán

Trang 12

8

+ Table SuDungDV:

Tính chất Tên trường Kiểu dữ liệu Kích cỡ Chú thích

Foreign MaDV int Tham chiếu dến

key Foreign MaKH int Tham chiếu đến

SoLuong int Số lượng SD DV

ThoiGianSDDV varchar 150 Thời Gian SDDV

+ Table ThuePhong:

Tính chất Tên trường Kiểu dữ liệu Kích cỡ Chú thích

Foreign MaPhong int Tham chiếu dến

key Foreign MaKH int Tham chiếu đến

NgayNhanPhong date Ngày nhận Phòng

NgayTraPhong date Ngày trả Phòng

Trang 13

9

+ Table QuanLyPhong:

Tính chất Tên trường Kiểu dữ liệu Kích cỡ Chú thích

Foreign MaNV int Tham chiếu dến

key Foreign MaPhong int Tham chiếu đến

TinhTrangPhong tinyint Tình trạng phòng

1- Trống 2- Đã thuê 3- Đang sửa chữa

Mối quan hệ giữa các bảng:

Trang 14

10

II.Thực Hiện Câu Lệnh Truy Vấn

1 Insert các bản ghi vào từng bảng

INSERT KhachHang Values

( 'Tran Van Tam' , '20201125' , '0344391591' ),

( 'Nguyen Lam Giang' , '20201134' , '0348291486' ),

( 'Nguyen Anh Dan' , '3912100123' , '0931494394' ),

( 'Ngoc Thi Chi' , '322313121' , '0143104102' ),

( 'Vi Thao Phuong' , '234011211' , '014141241' ),

( 'Ngoc Thi Thu Huyen' , '324934932' , '0313184123' ),

( 'Vu Thi Hien Ha' , '221319142' , '0231318132' ),

( 'Ngo Ba Kha' , '213191239' , '0812414141' ),

( 'Tran Thanh Tam' , '231312343' , '0919321332' ),

( 'Tran Manh Quang' , '212413113' , '02406297363' );

Insert NhanVien Values

( 'Pham Quynh Anh' , '09/03/2002' , 'phamqanh22@gmail.com' , 'Quan Ly' , '038491183' , 'Van Son-Son Dong-Bac Giang' ),

( 'Ngo Van Quan' , '03/22/2002' , 'ngoquan2203@gmail.com' , 'Nhan Vien Le

Tan' , '039138148' , 'Le Vien-Son Dong-Bac Giang' ),

( 'Vi Xuan Thao' , '11/29/2002' , 'thaokhoioccho@gmail.com' , 'Nhan Vien Dich

Vu' , '034414911' , 'Ha 2-Son Dong-Bac Giang' ),

( 'Nguyen Thi Ngoc Dieu' , '12/24/1999' , 'ngocdieu69@gmail.com' , 'Nhan Vien Le

Tan' , '023191403' , 'Reo-Luc Ngan-Bac Giang' ),

( 'Tran Van Chung' , '09/11/2001' , 'tranchung91@gmail.com' , 'Quan Ly

Phong' , '0920113213' , 'Ha 1-Son Dong-Bac Giang' ),

( 'Ngo Thuy Duong' , '03/30/2000' , 'thuyduong03@gmail.com' , 'Nhan Vien Thu

Ngan' , '031283343' , 'Bong Am-Son Dong-Bac Giang' ),

( 'Tran Van Tinh' , '09/01/1998' , 'trantinh09@gmail.com' , 'Nhan Vien Thu

Ngan' , '031039483' , 'Dong Chu-Son Dong-Bac Giang' ),

( 'Phan Thi Hoa Sen' , '11/29/2003' , 'hoaasenn11@gmail.com' , 'Nhan Vien Dich

Vu' , '0329392211' , 'Vinh An-Son Dong-Bac Giang' ),

( 'Nguyen Bao Nhi' , '02/23/2000' , 'baonhi96@gmail.com' , 'Quan Ly

Phong' , '091239411' , 'An Chau-Son Dong-Bac Giang' ),

( 'Phung Khanh Linh' , '07/24/2002' , 'khahlinh9@gmail.com' , 'Nhan Vien Ke

Toan' , '092213141' , 'Hoa Mai-Son Dong-Bac Giang' );

Insert Phong Values

( 'P101' , 'Phong Don' , '500000' ),

( 'P102' , 'Phong Doi' , '700000' ),

( 'P201' , 'Phong Don' , '400000' ),

( 'P202' , 'Phong Doi' , '600000' ),

( 'P301' , 'Phong Don' , '900000' ),

( 'P302' , 'Phong Doi' , '1000000' ),

( 'P401' , 'Phong Vip' , '1500000' ),

( 'P402' , 'Phong Don' , '450000' ),

( 'P2406' , 'Phong Don' , '100000' ),

( 'P4953' , 'Phong Doi' , '300000' );

Trang 15

11

Insert DichVu Values

( 'Bua Sang' , '40000' ),

( 'Bua Trua' , '70000' ),

( 'Bua Toi' , '150000' ),

( 'Buffet' , '199999' ),

( 'Massage' , '150000' ),

( 'Thue Xe' , '30000' ),

( 'Giat La' , '20000' ),

( 'Dua Don San Bay' , '300000' ),

( 'KaraOke' , '150000' ),

( 'Fitness Center' , '250000' );

Insert SuDungDV Values

( , , , '25/12/2021: 7h30p va 26/12/2021: 7h' ),

( ,10, , '25/12/2021: 12h' ),

( , , , '24/12/2021: 19h va 25/12/2021: 20h' ),

( , , , '20/12/2021: 6h30p' ),

( , , , '24/12/2021: 6h->6h30p va 25/12/2021: 22h->23h' ),

( , , , '25/12/2021: 6h->10h30p va 26/12/2021: 18h->22h30p' ), ( , , , '24/12/2021: 5h30p, 12h30p va 25/12/2021: 5h40p' ), ( , , , '25/12/2021: 6h45p' ),

( , , , '25/12/2021: 20h30->22h11p va 26/12/2021: 20h->21h54p' ), (10, , , '25/12/2021: 6h->7h30p' );

Insert ThuePhong Values

( , , '12/25/2021' , '12/27/2021' ),

( ,10, '12/24/2021' , '12/25/2021' ),

( , , '12/23/2021' , '12/26/2021' ),

( , , '12/20/2021' , '12/20/2021' ),

( , , '12/24/2021' , '12/26/2021' ),

( , , '12/24/2021' , '12/26/2021' ),

( , , '12/24/2021' , '12/25/2021' ),

( , , '12/24/2021' , '12/25/2021' ),

( , , '12/24/2021' , '12/27/2021' ),

(10, , '12/25/2021' , '12/25/2021' );

Insert QuanLyPhong Values

( , , ),

( ,10, ),

( , , ),

( , , ),

( , , ),

( , , ),

( , , ),

( , , ),

( , , ),

(10, , );

Trang 16

12

Insert HoaDon Values

( , '1080000' , ),

(10, '1540000' , ),

( , '1900000' , ),

( , '799999' , ),

( , '2100000' , ),

( , '2030000' , ),

( , '1560000' , ),

( , '750000' , ),

( , '400000' , ),

( , '550000' , );

Insert ThanhToan Values

( , , '12/27/2021' , 'Tien Mat' ),

( ,10, '12/25/2021' , 'Chuyen Khoan' ),

( , , '12/26/2021' , 'Quyet QR' ),

( , , '12/20/2021' , 'Tien Mat' ),

( , , '12/26/2021' , 'Cam Xe' ),

( , , '12/26/2021' , 'Chuyen Khoan' ),

( , , '12/25/2021' , 'Tien Mat' ),

( , , '12/25/2021' , 'Quyet QR' ),

( , , '12/27/2021' , 'Chuyen Khoan' ),

(10, , '12/25/2021' , 'Mai Tra' );

2 Câu lệnh truy vấn demo

1.Index:

CREATE NONCLUSTERED INDEX nonclus_TenKH ON KhachHang(TenKH);

CREATE UNIQUE NONCLUSTERED INDEX uninonclus_SoCCCD_SDT ON KhachHang(SoCCCD,SDT);

CREATE UNIQUE NONCLUSTERED INDEX uninonclus_Email ON NhanVien(Email);

EXEC sp_helpindex 'KhachHang' ;

2.View:

Create view vw_Thongtinkhachhang as select TenKH[Ten Khach Hang],TenPhong,

NgayNhanPhong,NgayTraPhong,TenDV[Da Su Dung

DV],SoLuong,ThoiGianSDDV[ThoiGianSuDungDV]

from KhachHang a join ThuePhong b on a.MaKH= MaKH join Phong c on

b MaPhong= MaPhong

join SuDungDV d on a.MaKH= MaKH join DichVu e on d.MaDV= MaDV;

Select from vw_Thongtinkhachhang;

3.SP:

CREATE PROC sp_TimkiemKhachHang(@Name VARCHAR (30)) AS

BEGIN

IF (EXISTS( SELECT TenKH FROM KhachHang WHERE TenKH like '%' +@Name+ '%' ))

select TenKH[Ten Khach Hang],TenPhong,NgayNhanPhong,NgayTraPhong,TenDV[Da Su Dung DV],SoLuong,ThoiGianSDDV[ThoiGianSuDungDV]

from KhachHang a join ThuePhong b on a.MaKH= MaKH join Phong c on

b MaPhong= MaPhong

join SuDungDV d on a.MaKH= MaKH join DichVu e on d.MaDV= MaDV Where TenKH like '%' +@Name+ '%' ;

ELSE IF (@Name = '*' )

select TenKH[Ten Khach Hang],TenPhong,NgayNhanPhong,NgayTraPhong,TenDV[Da Su Dung DV],SoLuong,ThoiGianSDDV[ThoiGianSuDungDV]

Trang 17

13

from KhachHang a join ThuePhong b on a.MaKH= MaKH join Phong c on

b MaPhong= MaPhong

join SuDungDV d on a.MaKH= MaKH join DichVu e on d.MaDV= MaDV;

ELSE

print N'Khong tim thay san pham co ten tuong tu ' +@Name;

END ;

EXEC sp_TimkiemKhachHang 'Tam' ;

4.Trigger DML

Insert

CREATE TRIGGER Check_SoluongDV ON SuDungDV FOR INSERT AS

IF ( SELECT Soluong From inserted) >=10

BEGIN

PRINT 'Dich da vuot qua so luong dich vu co the phuc vu !!!'

ROLLBACK TRANSACTION

END

Insert SuDungDV Values

( , , , '25/12/2021: 7h30p va 26/12/2021: 7h' );

Update

CREATE TRIGGER Checkgiaphong ON Phong FOR UPDATE AS

IF ( SELECT GiaPhong From inserted) >1500000

BEGIN

PRINT 'Gia phong khong duoc vuot qua 1500000 !!!'

ROLLBACK

END

UPDATE Phong SET GiaPhong=1600000 WHERE MaPhong= ;

Delete

CREATE TRIGGER KhachHangVIP ON KhachHang FOR DELETE AS

IF '1' in( SELECT MaKH FROM deleted)

BEGIN

PRINT 'Khong the xoa khach VIP.'

ROLLBACK TRANSACTION

END ;

Alter Table SuDungDV Drop constraint Fk_Makhachhang;

Alter Table ThuePhong Drop constraint Fk_MaKHTP;

Alter Table HoaDon Drop constraint Fk_MaKHT;

DELETE FROM KhachHang WHERE MaKH = '1' ;

Trigger After:

CREATE TRIGGER SaThaiNhanVien

ON NhanVien

AFTER DELETE

AS

BEGIN

DECLARE @num nchar ;

SELECT @num = COUNT (*) FROM deleted

PRINT N'So luong nhan vien da xoa= ' @num

END ;

DELETE FROM NhanVien WHERE MaNV = '7' ;

Trigger Instead of

CREATE TRIGGER XoaKhachHang ON KhachHang

INSTEAD OF DELETE

AS

BEGIN

DELETE FROM ThuePhong WHERE MaPhong IN

( SELECT MaKH FROM deleted)

Trang 18

14

DELETE FROM KhachHang WHERE MaKH IN

( SELECT MaKH FROM deleted)

END ;

III.Chạy thử và đánh giá kết quả

Cơ sở dữ liệu được cài đặt thành công Các câu lệnh truy vấn demo đều chạy ổn và đúng yêu cầu Tuy nhiên do đây là một project nhỏ và những chức năng trong cơ sở dữ liệu cũng chưa đáp úng được hết yêu cầu quản lý một khách sạn Do còn nhiều thiếu xót em kính mong quý thầy cô nhận xét và góp ý để project lần sau được hoàn thiện hơn Em xin trân thành cảm ơn!!

IV.Tài Liệu Tham Khảo

V 1Study -> PHP: Documentation mẫu cho thiết kế Website (Phần 3 mục

3.1 và 3.2)

Link:

https://v1study.com/php-documentation-mau-cho-thiet-ke-website.html#system-design

• Free ebook

Link: http://www.cunghocit24.com/

V 1Study -> SQL Sever: Lược đồ Thực thể-Quan hệ ( Entity-Relationship Diagram E-RD)

Link: https://v1study.com/sql-server-bai-hoc-luoc-do-thuc-the-quan-he-entity-relationship-diagram-e-r-d.html

Đi lên đầu trang

END

Ngày đăng: 28/06/2024, 15:49

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

TÀI LIỆU LIÊN QUAN

w