Số lượng phòng chiếu phimtrên cả nước năm 2020 là 901 phòng với 130.900 ghế, ướctính doanh thu chiếu phim thương mại là 3.500 tỷ đồng.- Thị trường rạp chiếu phim phát triển mạnh dẫn tới
B THNG TIN V TRUYN THNG HC VIN CNG NGH BU CHNH VIN THNG ============== BÁO CÁO CƠ SỞ DỮ LIU PHÂN TÁN Đề tài: Quản lý rạp chiếu phim Giảng viên: TS Phan Thị Hà Thực hiện: Nhóm Hà Duyên B19DCCN2 Hùng 93 Lê Văn Trung B19DCCN6 96 Nguyễn Văn B19DCCN2 Hạnh 35 Hoàng Văn Lộc B19DCCN4 56 Hà Nội – 2023 Trang Mục lục Mục lục I Đặt vấn đề Nhu cầu tầm quan trọng dự án 2 Vị trí nhiệm vụ, liệu triển khai dự án Các đối tượng tham gia sử dụng dự án .2 II Phân tích Các chức hệ thống Phân quyền cho nhóm đối tượng 3 Phân tích chức vị trí thức dự án 4 Chức máy chủ .4 Chức máy trạm .4 Phân tích CSDL 6.1 Lược đồ liên kết thực thể .5 6.2 Lược đồ quan hệ Bảng tần suất truy cập .6 III Thiết kế Thiết kế hệ thống mạng tổng quan Thiết kế CSDL hệ thống Lược đồ quan hệ liên kết 12 IV Cài Đặt 22 1, Cài đặt SQL Server 2019 Developer 22 Tạo CSDL cho Server máy trạm đồng CSDL cho máy chủ 35 Trigger 45 Procedure 51 Trang I Đặt vấn đề Nhu cầu tầm quan trọng dự án - Những năm gần đây, thị trường điện ảnh trị giá 100 triệu USD Việt Nam trở thành miếng bánh hấp dẫn mắt nhà đầu tư Số lượng phòng chiếu phim nước năm 2020 901 phòng với 130.900 ghế, ước tính doanh thu chiếu phim thương mại 3.500 tỷ đồng - Thị trường rạp chiếu phim phát triển mạnh dẫn tới việc nhu cầu xây rạp chiếu phim ngày căng tăng, kéo theo vấn đề quản lý rạp chiếu phim: để quản lý số vé bán ra, số nv hệ thống,… Để đảm bảo lưu trữ số lượng liệu lớn mà đảm bảo thời gian truy vấn liệu nhanh rạp hệ thống phải tiến hành phân mảnh cho sở liệu quản lý rạp chiếu phim Vị trí nhiệm vụ, liệu triển khai dự án Dự án triển khai nội công ty với 10 chi nhánh rạp máy chủ tổng Cơ sở liệu quản lý rạp chiếu phim bao gồm nhiệm vụ chính: - Phân tích liệu, tạo bảng liệu, thiết lập quan hệ liệu - Phân tích chức hệ thống - Phân tích thiết kế sở liệu phân tán - Quản lý CSDL site phân tán Cài đặt sở liệu phân tán, thực thi Trang 3 Các đối tượng tham gia sử dụng dự án - Nhân viên - Khách hàng - Quản lý II Phân tích Các chức hệ thống - Quản lý rạp chi nhánh (thêm, sửa, xoá, thống kê) - Quản lý nhân viên (thêm, sửa, xoá, thống kê) - Quản lý khách hàng (thêm, sửa, xoá, thống kê) - Quản lý phịng chiếu (thêm, sửa, xố, thống kê) - Quản lý lịch chiếu phim (thêm, sửa, xoá, thống kê) - Quản lý phim (thêm, sửa, xoá, thống kê) - Quản lý hoá đơn, vé xem phim (thêm, sửa, xoá, thống kê) - Thống kê Phân quyền cho nhóm đối tượng Nhóm đối tượng quản lý - Nhân viên quản lý: + Quản lý nhân viên chi nhánh + Xem báo cáo thống kê - Nhân viên: + Quản lý thông tin khách hàng + Thực bán vé + Thực tạo hóa đơn Nhóm đối tượng cần quản lý: - Nhân viên: thông tin nhân viên - Phim: thông tin phim - Nhà cung cấp: thông tin nhà cung cấp - Phịng: thơng tin phịng Trang - Khách hàng: thông tin khách hàng - Hóa đơn bán: thơng tin vé bán, chi phí phải tốn, Phân tích chức vị trí thức dự án - Dự án triển khai nội công ty với 10 chi nhánh rạp máy chủ tổng, bao gồm: + Rạpj1 (Tại Hà Nội) + Rạp 2j(Tại Đà Nẵng) + Rạp 3j(Tại Cần Thơ) + Rạp 4j(Tại Biên Hồ) + Rạp 5j(Tại Hải Phịng) + Rạp 6j(Tại Nha Trang) + Rạp 7j(Tại Hải Dương) + Rạp 8j(Tại Bắc Ninh) + Rạp 9j(Tại Thanh Hoá) + Rạp 10j(Tại Thành phố Hồ Chí Minh) - Tạijserverjmáyjchủ: + Đặt máy chủ, lưu trữ liệu toàn hệ thống Đồng hố liệu tồn hệ thống + Lấy liệu từ máy trạm chi nhánh chuyển liệu xuống máy trạm chi nhánh khác có yêu cầu Chức máy chủ - Đặt máy chủ, lưu trữ liệu toàn hệ thống Đồng hóa liệu tồn hệ thống - Lấy liệu từ máy trạm rạp chuyển liệu xuống máy trạm chi nhánh có yêu cầu Trang Document continues below Discover more Công nghệ phần from: mềm CNPM123 Học viện Công ng… 69 documents Go to course 34 94 Tìm hiểu hệ điều hành thời gian thực… Công nghệ phần mềm None Phantichdetai-1 - sở liệu Công nghệ phần mềm None So-tay-huong-danCDS-cho- Dnnvv-… Công nghệ phần mềm None Kịch unbuntu Công nghệ phần mềm None Kiemtra 06 08 Lê Tiến Thành Công nghệ phần mềm None Check Le Huu - Thêm/sửa/xố thực thể có toàn hệList thống, tạo báo cáo thống kê theo yêu cầu 14 Dung - Công nghệ… - Phân quyền cho máy trạm tương ứng Công nghệ phần mềm Chức máy trạm None Tại rạp tương ứng với máy trạm (3 máy trạm) - Mỗi nhập liệu giao dịch xong thêm thông tin (khách hàng, nhân viên,…) gửi liệu lên máy chủ - Lưu trữ liệu bán vé dịch vụ khác rạp chiếu phim - Khi cần liệu từ chi nhánh khác truy vấn đến máy chủ để lấy liệu cần thiết Trang 6 Phân tích CSDL 6.1 Lược đồ liên kết thực thể Trang 6.2 Lược đồ quan hệ Bảng tần suất truy cập Trụ sở Chi nhánh Rap H.R L.EWD H.R NhanVien H.R L.EWD H.R L.EWD KhachHang H.R L.EWD H.REW L.D Phim H.RW L.ED H.R NhaCungCap H.R L.EWD H.R Trang Chọn Database Enable cho Login… Trang 46 Ở mục Server Objects, chuột phải vào Linked Server chọn New Linked Server Trang 47 Trong mục Security, chọn Be made using this security context -> nhập tài khoản mật Chọn True mục RPC Out Trang 48 SELECT * FROM LINK.QL_RAPPHIM_LONG Trang 49 Trigger Trigger: nhanvienTrigger create trigger nhanvienTrigger on [dbo].[NhanVien] after insert, update AS declare @ide varchar(50) set @ide = (select MaNV from inserted) Khoi tao bien dem, neu bang thi la may khach declare @dem int set @dem = (select count(MaRap) from dbo.RapPhim) declare @id varchar(50) if(@dem>1) tai may chu begin end else tai may khach begin dbo.RapPhim) print('ok') declare @bID varchar(50) = (select MaRap from declare @check varchar(50) set @check = @bID +'%' if(@ide like @check) kiem tra neu xuat phat dung ma ma rap thi nhan begin print('Ok') end else begin print('ID khong hop le, ') rollback tran end end phongTrigger create trigger phongTrigger on [dbo].[Phong] after insert, update AS declare @ide varchar(50) set @ide = (select MaPhong from inserted) Khoi tao bien dem, neu bang thi la may khach declare @dem int set @dem = (select count(MaRap) from dbo.RapPhim) declare @id varchar(50) if(@dem>1) tai may chu begin end else tai may khach begin dbo.RapPhim) end print('ok') declare @bID varchar(50) = (select MaRap from declare @check varchar(50) set @check = @bID +'%' if(@ide like @check) kiem tra neu xuat phat dung ma ma rap thi nhan begin print('Ok') end else begin print('ID khong hop le, ') rollback tran end Trang 50 veTrigger create trigger veTrigger on [dbo].[Ve] after insert, update AS declare @ide varchar(50) set @ide = (select MaVe from inserted) Khoi tao bien dem, neu bang thi la may khach declare @dem int set @dem = (select count(MaRap) from dbo.RapPhim) declare @id varchar(50) if(@dem>1) tai may chu begin end else tai may khach begin dbo.RapPhim) print('ok') declare @bID varchar(50) = (select MaRap from declare @check varchar(50) set @check = @bID +'%' if(@ide like @check) kiem tra neu xuat phat dung ma ma rap thi nhan begin print('Ok') end else begin print('ID khong hop le, ') rollback tran end end hoadonTrigger create trigger hoadonTrigger on [dbo].[HoaDon] after insert, update AS declare @ide varchar(50) set @ide = (select MaHD from inserted) Khoi tao bien dem, neu bang thi la may khach declare @dem int set @dem = (select count(MaRap) from dbo.RapPhim) declare @id varchar(50) if(@dem>1) tai may chu begin end else tai may khach begin dbo.RapPhim) end print('ok') declare @bID varchar(50) = (select MaRap from declare @check varchar(50) set @check = @bID +'%' if(@ide like @check) kiem tra neu xuat phat dung ma ma rap thi nhan begin print('Ok') end else begin print('ID khong hop le, ') rollback tran end Trang 51 banveTrigger create trigger banveTrigger on [dbo].[BanVe] after insert, update AS declare @ide varchar(50) set @ide = (select MaBanVe from inserted) Khoi tao bien dem, neu bang thi la may khach declare @dem int set @dem = (select count(MaRap) from dbo.RapPhim) declare @id varchar(50) if(@dem>1) tai may chu begin end else tai may khach begin dbo.RapPhim) print('ok') declare @bID varchar(50) = (select MaRap from declare @check varchar(50) set @check = @bID +'%' if(@ide like @check) kiem tra neu xuat phat dung ma ma rap thi nhan begin print('Ok') end else begin print('ID khong hop le, ') rollback tran end end chieuTrigger create trigger chieuTrigger on [dbo].[Chieu] after insert, update AS declare @ide varchar(50) set @ide = (select MaChieu from inserted) Khoi tao bien dem, neu bang thi la may khach declare @dem int set @dem = (select count(MaRap) from dbo.RapPhim) declare @id varchar(50) if(@dem>1) tai may chu begin end else tai may khach begin dbo.RapPhim) print('ok') declare @bID varchar(50) = (select MaRap from declare @check varchar(50) set @check = @bID +'%' if(@ide like @check) kiem tra neu xuat phat dung ma ma rap thi nhan begin print('Ok') end else begin print('ID khong hop le, ') rollback tran end Trang 52 end addSeatTrigger create trigger addSeat on [dbo].[Phong] after insert AS declare @Hang int declare @Cot int declare @MaPhong varchar(255) set @Hang = (select SoHang from inserted) set @Cot = (select SoCot from inserted) set @MaPhong = (select MaPhong from inserted) declare @i int = declare @j int = if(@Hang > and @Cot > 0) begin while(@i 1) tai may chu begin print('ok') end else tai may khach begin print('Khong duoc xoa, sua, hoac them') rollback tran end protectRapTrigger DROP trigger IF EXISTS ProtectRapTrigger go create trigger ProtectRapTrigger on [dbo].[RapPhim] after delete, update, insert AS if ((select count(*) from [dbo].[RapPhim]) > 1) tai may chu begin print('ok') end else tai may khach begin print('Khong duoc xoa, sua, hoac them') rollback tran end Trang 54 Procedure Function: fnRemoveAccents: chuyển từ tiếng Việt thành chữ khơng dấu - Procedure tìm khách hàng theo tên, với tên khách hàng không phân biệt hoa, thường có bỏ dấu tiếng Việt - Procedure tạo liệu cho bảng Bán vé thực việc bán vé Trang 55 - Procedure tìm lịch chiếu theo tên phim, với tên phim không phân biệt hoa, thường có bỏ dấu tiếng Việt - Procedure tạo vé, với id gồm chữ đầu mã định danh tương ứng với rạp, số sau tương ứng với số thứ tự vé Trang 56 - Procedure tạo hoá đơn Giao diện đăng nhập nhân viên: Trang 57 Giao diện chọn khách hàng Giao diện chọn phim: Trang 58 Giao diện hoá đơn Trang 59 Trang 60