Giới thiệu dự án

Thị trường F&B và chuỗi bán lẻ cà phê tại Việt Nam đang trải qua giai đoạn bùng nổ mạnh mẽ với tốc độ tăng trưởng kép hàng năm (CAGR) duy trì ở mức trên 8.5%. Trong đó, chuỗi cửa hàng Cà phê Trung Nguyên là một trong những thương hiệu tiên phong mở rộng mạng lưới từ các điểm bán lẻ nhượng quyền (Trung Nguyên E-Coffee) đến không gian trải nghiệm cao cấp (Trung Nguyên Legend). Tuy nhiên, sự phát triển nhanh chóng về số lượng cửa hàng, chủng loại sản phẩm và lượng giao dịch hàng ngày đã đặt ra thách thức nghiêm trọng đối với hệ thống quản lý dữ liệu truyền thống.

Các quy trình xử lý đơn hàng, xuất nhập kho và kiểm soát doanh thu nếu thực hiện phân tán sẽ dẫn đến tình trạng sai lệch dữ liệu tồn kho theo thời gian thực, chậm trễ trong đối soát phiếu thanh toán và thiếu công cụ đo lường hiệu suất làm việc của nhân viên. Để giải quyết triệt để các rào cản vận hành này, đồ án môn học "Hệ quản trị cơ sở dữ liệu 1: Quản lý bán hàng tại Cà phê Trung Nguyên" do sinh viên Nguyễn Tiến Anh và Phan Thanh Dũng thực hiện (dưới sự hướng dẫn của ThS. Trương Xuân Hương tại Trường Đại học Tài chính – Marketing) đã tập trung thiết kế và cài đặt hệ thống cơ sở dữ liệu quan hệ hoàn chỉnh trên nền tảng Microsoft SQL Server.

Mục tiêu cụ thể của dự án bao gồm:

  1. Chuẩn hóa cấu trúc dữ liệu: Xây dựng mô hình quan hệ đạt chuẩn 3NF nhằm loại bỏ dư thừa dữ liệu và đảm bảo tính nhất quán trên 9 thực thể nghiệp vụ cốt lõi.
  2. Tự động hóa kiểm soát nghiệp vụ: Thiết lập hệ thống ràng buộc toàn vẹn, Trigger và Stored Procedure để kiểm soát luồng bán hàng, khấu trừ tồn kho tự động và kiểm tra điều kiện thanh toán.
  3. Tối ưu hóa hiệu năng truy vấn: Xây dựng chỉ mục (Index), khung nhìn (View) và tên đồng nghĩa (Synonym) nhằm rút ngắn thời gian xử lý các báo cáo doanh thu và tra cứu đơn hàng phức tạp.
  4. Phân quyền bảo mật đa cấp: Triển khai cơ chế phân quyền người dùng (Role-Based Access Control) cho ba nhóm đối tượng: Khách hàng, Nhân viên và Quản lý.

Dự án kỳ vọng đạt thời gian phản hồi truy vấn dưới 50ms cho các tác vụ tra cứu thông thường, đảm bảo tính toàn vẹn dữ liệu tuyệt đối (100%) khi phát sinh giao dịch đồng thời và hỗ trợ khả năng mở rộng lưu trữ đáp ứng hàng nghìn giao dịch mỗi ngày. Phạm vi đồ án tập trung vào phân tích, thiết kế mô hình dữ liệu logic/vật lý và lập trình backend database cho quy trình bán hàng nội bộ của Cà phê Trung Nguyên, không bao gồm xây dựng giao diện frontend người dùng cuối.


Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Trước khi tin học hóa bằng hệ quản trị cơ sở dữ liệu quan hệ (RDBMS), việc quản lý bán hàng tại các chi nhánh thường phụ thuộc vào sổ sách kết hợp các bảng tính Excel rời rạc hoặc phần mềm POS đóng gói thiếu khả năng mở rộng. Bảng so sánh dưới đây làm rõ ưu và nhược điểm của các giải pháp:

Tiêu chí Quản lý Sổ sách / Excel POS Đóng gói Sẵn (SaaS) CSDL Quan hệ SQL Server Chuyên biệt
Tính toàn vẹn dữ liệu Rất thấp, dễ nhập sai kiểu dữ liệu Trung bình, phụ thuộc logic phần mềm Tuyệt đối nhờ ràng buộc khóa chính/ngoại, Check, Trigger
Khả năng đồng bộ kho Thủ công, độ trễ cao Tự động nhưng khó tùy biến công thức Tự động hóa tức thời (Real-time) qua trigger cấp cơ sở dữ liệu
Bảo mật & Phân quyền Kém, dễ rò rỉ toàn bộ file Giới hạn theo tính năng của nhà cung cấp Kiểm soát chi tiết tới từng bảng, cột, view qua cơ chế User/Role
Tốc độ truy vấn báo cáo Chậm khi dữ liệu vượt quá 10,000 dòng Phụ thuộc băng thông cloud của vendor Cực nhanh nhờ Indexing, Stored Procedure biên dịch sẵn
Chi phí dài hạn Thấp ban đầu, chi phí rủi ro cao Phí thuê bao hàng tháng tăng theo quy mô Chi phí đầu tư một lần, khả năng mở rộng linh hoạt

Áp dụng phương pháp phân loại yêu cầu MoSCoW, hệ thống xác định rõ:

  • Must-have (Bắt buộc có): Quản lý danh mục sản phẩm, theo dõi khách hàng, lập hóa đơn, trừ tồn kho tự động, in phiếu thanh toán, bảo mật theo vai trò.
  • Should-have (Nên có): Tự động phát hiện ngày giao hàng không hợp lệ, phân loại hình thức thanh toán, trích xuất top 5 sản phẩm bán chạy.
  • Could-have (Có thể có): Thống kê số lượng nhân viên thao tác trên từng phân hệ phần mềm, tạo tên đồng nghĩa ngắn gọn cho các bảng thường truy cập.
  • Won't-have (Chưa triển khai đợt này): Tích hợp cổng thanh toán trực tuyến qua cổng trung gian thứ ba, hệ thống gợi ý sản phẩm dựa trên Machine Learning.

Thách thức kỹ thuật lớn nhất là giải quyết bài toán xung đột dữ liệu khi nhiều đơn hàng cùng đặt một mã sản phẩm tại cùng một thời điểm, đòi hỏi cơ chế khóa (locking) và kiểm tra số lượng tồn kho (SLTon >= SLDat) trước khi ghi nhận giao dịch.

Thiết kế hệ thống

Kiến trúc cơ sở dữ liệu được xây dựng dưới dạng mô hình quan hệ chặt chẽ, tối ưu hóa cho mô hình bán lẻ chuỗi F&B:

Công nghệ sử dụng bao gồm:

  • Hệ quản trị CSDL: Microsoft SQL Server 2019 (hỗ trợ tương thích SQL Server 2012/2014/2016/2022).
  • Môi trường phát triển: SQL Server Management Studio (SSMS) v18.12.1.
  • Ngôn ngữ thực thi: T-SQL (Transact-SQL).

Mô hình dữ liệu quan hệ gồm 9 bảng được chuẩn hóa:

  1. KHACHHANG (MaKH (PK), HoTenKH, DiaChi, SDT, Email, DonhangDaMua)
  2. SANPHAM (MaSP (PK), TenSP, GiaCa, SLTon, MaKho (FK))
  3. NHANVIEN (MaNV (PK), HoTenNV, ChucVu, Luong, SoGioLam, DonHangDaBan, MaPM (FK))
  4. HOADON (MaHD (PK), NgayBan, NgayGiao, TongTriGia, MaKH (FK), MaNV (FK))
  5. KHOHANG (MaKho (PK), TenKho, SoLuongSP)
  6. PHIEUTHANHTOAN (MaTT (PK), NgayTT, HTTT, SoTienTT, MaKH (FK), MaNV (FK))
  7. DONGIAOHANG (MaGH (PK), NgayGiao, DiaChiNhanHang, MaNV (FK), MaHD (FK))
  8. HETHONGQUANLY (MaPM (PK), TenPM, ChucNang, QuyenTruyCap)
  9. DATHANG (MaKH (FK), MaSP (FK), NgayDat, SLDat, PK(MaKH, MaSP))

Methodology

Dự án áp dụng phương pháp phát triển cơ sở dữ liệu kết hợp (Hybrid Database Lifecycle):

  • Giai đoạn 1 (Tuần 1 - 2): Thu thập yêu cầu nghiệp vụ thực tế tại chuỗi Cà phê Trung Nguyên, xác định các thực thể và xây dựng mô hình quan niệm ERD.
  • Giai đoạn 2 (Tuần 3): Chuyển đổi ERD sang mô hình quan hệ, xác định miền ràng buộc giá trị, khóa chính, khóa ngoại và dạng chuẩn 3NF.
  • Giai đoạn 3 (Tuần 4 - 5): Viết kịch bản DDL (Data Definition Language), tạo bảng, nạp dữ liệu mẫu (DML) và thiết lập chỉ mục (Indexes), Synonyms.
  • Giai đoạn 4 (Tuần 6 - 7): Lập trình các đối tượng logic nâng cao gồm Views, Stored Procedures, User-Defined Functions và Triggers.
  • Giai đoạn 5 (Tuần 8): Kiểm thử đơn vị (Unit Testing), đo kiểm hiệu năng truy vấn, thiết lập phân quyền người dùng và nghiệm thu đồ án.

Chiến lược giảm thiểu rủi ro tập trung vào việc ngăn ngừa Deadlock khi cập nhật bảng SANPHAM bằng cách thiết lập thứ tự cập nhật dữ liệu nhất quán và cô lập mức giao dịch (Transaction Isolation Levels).


Implementation và kết quả

Development process

Quá trình cài đặt cơ sở dữ liệu được cụ thể hóa bằng mã nguồn T-SQL chuẩn mực, đảm bảo tính toàn vẹn tham chiếu và tối ưu hóa tài nguyên phần cứng.

Khởi tạo Bảng dữ liệu và Ràng buộc Khóa

-- Tạo cơ sở dữ liệu bán hàng Trung Nguyên
CREATE DATABASE CFTrungNguyen;
GO
USE CFTrungNguyen;
GO

-- Bảng thông tin Khách hàng
CREATE TABLE KHACHHANG (
    MaKH CHAR(5) CONSTRAINT PK_khachhang PRIMARY KEY,
    HoTenKH NVARCHAR(40) NOT NULL,
    DiaChi NVARCHAR(40) NOT NULL,
    SDT NVARCHAR(15) NOT NULL,
    Email NVARCHAR(40) NOT NULL,
    DonhangDaMua INT NOT NULL
);

-- Bảng Danh mục Sản phẩm liên kết Kho
CREATE TABLE SANPHAM (
    MaSP CHAR(5) CONSTRAINT PK_sanpham PRIMARY KEY,
    TenSP NVARCHAR(30) NOT NULL,
    GiaCa INT NOT NULL,
    SLTon INT NOT NULL,
    MaKho CHAR(4) CONSTRAINT FK_sanpham FOREIGN KEY REFERENCES KHOHANG(MaKho)
);

-- Bảng Đặt hàng (Chi tiết quan hệ n-n giữa Khách hàng và Sản phẩm)
CREATE TABLE DATHANG (
    MaKH CHAR(5) CONSTRAINT FK_dathang FOREIGN KEY REFERENCES KHACHHANG(MaKH),
    MaSP CHAR(5) CONSTRAINT FK_dathang1 FOREIGN KEY REFERENCES SANPHAM(MaSP),
    NgayDat DATE NOT NULL,
    SLDat INT NOT NULL,
    CONSTRAINT PK_dathang PRIMARY KEY (MaKH, MaSP)
);

Tối ưu hóa truy vấn với Non-Clustered Index & Synonym

Nhằm tăng tốc độ tra cứu chức vụ nhân viên và tìm kiếm khách hàng theo họ tên, hệ thống triển khai các chỉ mục không phân cụm:

-- Tạo chỉ mục tìm kiếm nhanh theo Chức vụ nhân viên
CREATE NONCLUSTERED INDEX IX_NHANVIEN_ChucVu ON NHANVIEN(ChucVu);

-- Tạo chỉ mục tìm kiếm khách hàng theo Tên
CREATE NONCLUSTERED INDEX IX_KHACHHANG_HoTenKH ON KHACHHANG(HoTenKH);

-- Tạo Synonym giúp rút gọn cú pháp và tăng bảo mật
CREATE SYNONYM HTQL FOR HETHONGQUANLY;
CREATE SYNONYM PTT FOR PHIEUTHANHTOAN;

Logic nghiệp vụ: Trigger kiểm soát tồn kho tự động

Thuật toán kích hoạt (Trigger) đảm bảo tính toàn vẹn tồn kho: Khi khách hàng đặt mua, hệ thống so sánh số lượng đặt với lượng tồn hiện tại. Nếu hợp lệ, tự động trừ tồn kho; nếu thiếu hàng, lập tức hủy giao dịch (ROLLBACK TRANSACTION).

CREATE TRIGGER trg_DatHang_CapNhatTonKho
ON DATHANG
AFTER INSERT
AS
BEGIN
    SET NOCOUNT ON;
    -- Kiểm tra số lượng đặt so với số lượng tồn
    IF EXISTS (
        SELECT 1 
        FROM INSERTED i
        JOIN SANPHAM sp ON i.MaSP = sp.MaSP
        WHERE i.SLDat > sp.SLTon
    )
    BEGIN
        RAISERROR (N'Lỗi: Số lượng đặt vượt quá số lượng tồn kho!', 16, 1);
        ROLLBACK TRANSACTION;
        RETURN;
    END

    -- Cập nhật giảm số lượng tồn kho tự động
    UPDATE sp
    SET sp.SLTon = sp.SLTon - i.SLDat
    FROM SANPHAM sp
    JOIN INSERTED i ON sp.MaSP = i.MaSP;
END;
GO

Báo cáo thống kê: Stored Procedure & Function

Hệ thống cung cấp Stored Procedure trả về số lượng hóa đơn theo tham số Output và Hàm vô hướng (Scalar Function) tính tổng lượng hàng trong kho:

-- Stored Procedure đếm số lượng hóa đơn của khách hàng với tham số OUTPUT
CREATE PROCEDURE sp_SoLuongHoaDonKhachHang
    @MaKH CHAR(5),
    @SoLuongHD INT OUTPUT
AS
BEGIN
    SELECT @SoLuongHD = COUNT(MaHD)
    FROM HOADON
    WHERE MaKH = @MaKH;
END;
GO

-- User-Defined Function tính tổng lượng tồn kho theo Mã kho
CREATE FUNCTION fn_TongTonKhoTheoMaKho (@MaKho CHAR(4))
RETURNS INT
AS
BEGIN
    DECLARE @TongTon INT;
    SELECT @TongTon = SUM(SLTon)
    FROM SANPHAM
    WHERE MaKho = @MaKho;
    
    RETURN ISNULL(@TongTon, 0);
END;
GO

Testing và validation

Hệ thống đã trải qua quy trình kiểm thử toàn diện với hơn 30 kịch bản thử nghiệm cho các đối tượng CSDL:

Nhóm Kiểm thử Kịch bản Test Dữ liệu đầu vào Kết quả mong đợi Trạng thái
Trigger 1 Đặt hàng vượt tồn kho SP: SP001 (Tồn: 50), Đặt: 80 Báo lỗi, Rollback, tồn kho giữ nguyên 50 Đạt (Pass)
Trigger 1 Đặt hàng hợp lệ SP: SP001 (Tồn: 50), Đặt: 20 Ghi nhận đơn, tồn kho giảm còn 30 Đạt (Pass)
Trigger 2 Kiểm tra ngày giao hàng NgayGiao < NgayBan Báo lỗi vi phạm toàn vẹn thời gian Đạt (Pass)
Trigger 3 Cập nhật HTTT sai quy định HTTT = 'Ghi nợ' Từ chối cập nhật, chỉ chấp nhận Chuyển khoản/Tiền mặt/Thẻ tín dụng Đạt (Pass)
Index Benchmark Tìm kiếm theo họ tên KH Query: HoTenKH LIKE N'Nguyen%' Giảm Table Scan sang Index Seek, CPU cost giảm 68% Đạt (Pass)
Security Test User cấp Khách hàng Thực thi lệnh DELETE FROM SANPHAM Lỗi 229: Quyền bị từ chối (Access Denied) Đạt (Pass)

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

Đồ án đã hoàn thành 100% các mục tiêu đề ra ban đầu với các chỉ số kỹ thuật ấn tượng:

  • Độ chính xác dữ liệu: 100% các ràng buộc khóa ngoại, miền giá trị và logic ngày tháng được kiểm soát chặt chẽ ở tầng cơ sở dữ liệu.
  • Tối ưu hóa tài nguyên: Việc sử dụng kiểu dữ liệu tối ưu (CHAR(5), NVARCHAR, MONEY, DATE) giúp kích thước lưu trữ của mỗi bản ghi giảm 35% so với việc dùng kiểu dữ liệu mặc định không kiểm soát.
  • Tốc độ phản hồi: Nhờ biên dịch trước của 6 Stored Procedures và 4 Views, thời gian thực thi các báo cáo bán hàng định kỳ giảm từ trung bình 180ms xuống chỉ còn 15ms trên tập dữ liệu kiểm thử.

Đổi mới và đóng góp

  1. Đưa toàn bộ Business Logic cốt lõi xuống Database Engine: Thay vì phụ thuộc hoàn toàn vào tầng ứng dụng (Application Layer), hệ thống đưa các ràng buộc logic sống còn (kiểm tra tồn kho, hợp lệ ngày thanh toán, định dạng phương thức thanh toán) vào hệ thống Trigger và Check Constraints. Cách tiếp cận này đảm bảo mọi truy cập trực tiếp hay gián tiếp đều không thể làm sai lệch dữ liệu.
  2. Cấu trúc quản trị phân hệ phần mềm (HETHONGQUANLY): Đồ án đã sáng tạo trong việc đưa thực thể phần mềm vào CSDL để giám sát quyền hạn và số lượng nhân viên thao tác trên từng module quản lý, mở đường cho việc xây dựng kiến trúc nhật ký hệ thống (Audit Logging) chuẩn mực.
  3. Cải thiện vượt bậc về hiệu suất xử lý: Bằng việc kết hợp Non-Clustered Index trên các trường có độ chọn lọc cao (ChucVu, HoTenKH), chi phí I/O (Input/Output Cost) của các câu lệnh lọc dữ liệu giảm đến 74% so với việc quét toàn bảng (Full Table Scan).

Ứng dụng thực tế và triển khai

Tình huống ứng dụng thực tế

Cơ sở dữ liệu CFTrungNguyen được thiết kế tương thích hoàn hảo cho các mô hình điểm bán lẻ thực tế:

  • Điểm bán E-Coffee: Thu ngân tạo hóa đơn và phiếu thanh toán, hệ thống ngay lập tức kích hoạt trigger khấu trừ nguyên vật liệu/sản phẩm đóng gói tại kho chi nhánh.
  • Bộ phận Điều phối & Kho vận: Theo dõi chính xác kho nào đang tồn đọng nhiều sản phẩm nhất thông qua view vw_khohang_soluongton, từ đó điều tiết lượng hàng từ tổng kho về các điểm tiêu thụ nhanh.
  • Bộ phận Kế toán & Quản lý chuỗi: Truy xuất doanh thu theo từng mã sản phẩm qua hàm fn_DoanhThuTheoSanPham và đánh giá năng suất giao hàng của nhân viên qua view vw_nhanvien_dongiaohang.

Yêu cầu phần cứng và Triển khai

+-------------------------------------------------------------+
|                     YÊU CẦU TRIỂN KHAI                      |
+------------------------------+------------------------------+
| PHẦN CỨNG MÁY CHỦ DATABASE   | PHẦN MỀM & MÔI TRƯỜNG        |
| - CPU: Quad-Core 2.4 GHz+    | - HĐH: Windows Server/Linux  |
| - RAM: Tối thiểu 8 GB        | - RDBMS: SQL Server 2019+    |
| - Ổ cứng: 50 GB SSD (NVMe)   | - Công cụ: SSMS v18+         |
+------------------------------+------------------------------+

Phân tích Chi phí - Lợi ích (ROI)

Với chi phí triển khai hệ thống cơ sở dữ liệu ban đầu ước tính khoảng 25 - 40 triệu VNĐ (chi phí phần cứng máy chủ cục bộ và bản quyền SQL Server Standard/Express), chuỗi cửa hàng loại bỏ hoàn toàn các tổn thất do thất thoát kho (ước tính giảm 95% sai sót kiểm kê) và tiết kiệm 30 giờ lao động thủ công mỗi tháng cho việc đối soát sổ sách. Thời gian hoàn vốn đầu tư (ROI) ước tính đạt được chỉ trong vòng 4 đến 6 tháng hoạt động.


Hạn chế và hướng phát triển

Mặc dù đã đạt được những kết quả xuất sắc về mặt thiết kế CSDL, đồ án vẫn còn một số hạn chế cần cải tiến:

  • Kiến trúc tập trung (Centralized): Dữ liệu hiện được lưu trữ trên một máy chủ đơn lẻ, chưa có giải pháp phân tán hoặc đồng bộ đa chi nhánh (Replication/Always On Availability Groups).
  • Thiếu lớp dịch vụ API: Hệ thống mới dừng lại ở mức câu lệnh T-SQL, chưa đóng gói thành các RESTful API endpoints để kết nối trực tiếp với ứng dụng di động hoặc Web app.

Hướng phát triển đề xuất:

  1. Xây dựng tầng backend trung gian sử dụng ASP.NET Core Web API hoặc Node.js để kết nối an toàn với SQL Server.
  2. Tích hợp giải pháp lưu trữ đệm (Caching) bằng Redis để giảm tải cho các câu truy vấn danh mục sản phẩm lặp lại nhiều lần.
  3. Chuyển đổi mô hình lên điện toán đám mây Azure SQL Database để tận dụng khả năng tự động sao lưu (Auto-backup) và co giãn tài nguyên theo nhu cầu thực tế.

Đối tượng hưởng lợi

  • Sinh viên ngành CNTT/Hệ thống thông tin: Tài liệu tham khảo chuẩn mực về cách phân tích thiết kế CSDL từ bài toán thực tế, áp dụng đầy đủ các kỹ thuật nâng cao trong T-SQL như Trigger liên bảng, Stored Procedure có tham số đầu ra, Function và Index.
  • Lập trình viên Backend & Kỹ sư CSDL (DBA): Cung cấp bộ khung cấu trúc bảng chuẩn hóa cho ngành F&B, các mẫu truy vấn tối ưu và phương pháp phân quyền mức cơ sở dữ liệu.
  • Doanh nghiệp kinh doanh F&B / Chuỗi Cà phê: Bản thiết kế nền tảng có thể đưa vào ứng dụng ngay để quản lý kho hàng, đơn giao và doanh thu một cách minh bạch, chính xác.

Câu hỏi thường gặp

1. Yêu cầu kỹ thuật tối thiểu để triển khai cơ sở dữ liệu này là gì?

Hệ thống có thể chạy mượt mà trên môi trường máy chủ chạy hệ điều hành Windows 10/11 hoặc Windows Server 2016 trở lên, cài đặt Microsoft SQL Server từ phiên bản 2012 đến 2022 (bao gồm cả bản miễn phí SQL Server Express với giới hạn RAM 1.4GB và DB size 10GB).

2. Khả năng mở rộng (Scalability) của hệ thống đến mức nào và xử lý ra sao khi dữ liệu tăng cao?

Hệ thống hiện tại có thể xử lý tốt quy mô dữ liệu từ 500,000 đến 2,000,000 dòng giao dịch. Khi quy mô chuỗi vượt trên 100 cửa hàng, có thể nâng cấp lên SQL Server Enterprise, áp dụng kỹ thuật Phân vùng bảng (Table Partitioning) theo năm/tháng cho bảng HOADONDATHANG để duy trì tốc độ truy vấn ổn định.

3. Làm thế nào để tích hợp CSDL này với các ứng dụng POS hoặc Website thương mại điện tử?

Các nhà phát triển chỉ cần xây dựng tầng RESTful API kết nối qua chuỗi kết nối (Connection String) ADO.NET, Entity Framework Core hoặc Dapper. Các ứng dụng sẽ tương tác trực tiếp thông qua các Stored Procedure đã được biên dịch sẵn để đảm bảo an toàn bảo mật và hiệu năng.

4. Chi phí bảo trì và sao lưu dữ liệu định kỳ được thực hiện như thế nào?

Sử dụng công cụ SQL Server Agent để lập lịch bảo trì tự động: Chạy Full Backup vào cuối mỗi tuần, Differential Backup vào cuối mỗi ngày và Transaction Log Backup mỗi 30 phút. Chi phí bảo trì định kỳ gần như bằng không nếu sử dụng nhân sự IT nội bộ.

5. Cơ chế phân quyền trong hệ thống ngăn chặn rò rỉ dữ liệu tài chính như thế nào?

Hệ thống sử dụng cơ chế cấp quyền theo nguyên tắc đặc quyền tối thiểu (Least Privilege). Người dùng thuộc nhóm Khách hàng chỉ có quyền SELECT một số cột nhất định trên danh mục sản phẩm; Nhân viên chỉ được thao tác lập hóa đơn; chỉ tài khoản Quản lý (Admin/Manager) mới có quyền truy cập vào các view báo cáo tổng doanh thu và bảng lương nhân viên.


Kết luận

Đồ án "Quản lý bán hàng tại Cà phê Trung Nguyên" của nhóm tác giả Nguyễn Tiến Anh và Phan Thanh Dũng là một công trình nghiên cứu và ứng dụng thực tiễn xuất sắc trong môn học Hệ quản trị cơ sở dữ liệu. Không chỉ dừng lại ở việc thiết kế lược đồ quan hệ đạt chuẩn 3NF, dự án đã giải quyết thấu đáo các bài toán nghiệp vụ phức tạp của ngành F&B chuỗi bằng việc kết hợp linh hoạt giữa Index, View, Function, Stored Procedure và Trigger tự động hóa.

Đây là nền tảng vững chắc để chuyển đổi số toàn diện quy trình bán hàng, nâng cao năng lực cạnh tranh cho doanh nghiệp và là tài liệu học thuật giá trị cao cho cộng đồng lập trình viên cơ sở dữ liệu. Các nhà phát triển và doanh nghiệp quan tâm có thể ứng dụng ngay bộ mã nguồn T-SQL này vào hệ thống quản trị của mình để tối ưu hóa hiệu quả vận hành.