Chương 2: Khảo sát và phân tích
III. Danh sách các thực thể và thuộc tính
Mô tả: Thực thể này lưu trữ thông tin của các khách hàng thuê váy cưới. Một khách hàng có thể thuê nhiều váy cưới trong nhiều hợp đồng khác nhau.
Thuộc tính:
o ID (int, khóa chính): Mã định danh duy nhất của khách hàng. Là số nguyên tự động tăng.
o TEN (nvarchar (100), bắt buộc): Tên của khách hàng. Đây là thông tin không thể thiếu và được lưu dưới dạng chuỗi ký tự Unicode với độ dài tối đa 100 ký tự.
o SO_DIEN_THOAI (varchar (15), bắt buộc): Số điện thoại của khách hàng.
Chuỗi ký tự chứa tối đa 15 ký tự, giúp liên lạc nhanh chóng.
o EMAIL (varchar (100), tùy chọn): Địa chỉ email của khách hàng. Đây là thông tin phụ và không bắt buộc.
o DIA_CHI (nvarchar (255), tùy chọn): Địa chỉ của khách hàng, lưu trữ dưới dạng chuỗi ký tự Unicode, tối đa 255 ký tự.
2. Thực thể: VÁY CƯỚI (VAY_CUOI)
Mô tả: Thực thể này chứa thông tin về các mẫu váy cưới mà cửa hàng cho thuê.
Thuộc tính:
o ID (int, khóa chính): Mã định danh duy nhất của váy cưới. Là số nguyên tự động tăng.
o TEN_VAY (nvarchar (100), bắt buộc): Tên váy cưới, lưu trữ dưới dạng chuỗi ký tự Unicode.
o KICH_CO (varchar (10), bắt buộc): Kích cỡ của váy cưới (ví dụ: S, M, L).
o MAU_SAC (nvarchar (50), tùy chọn): Màu sắc của váy cưới. Ví dụ: Trắng, Hồng, Be, ...
o GIA_THUE (decimal (10,2), bắt buộc): Giá thuê váy cưới trong một ngày.
Là số thập phân với tối đa 10 chữ số, trong đó có 2 chữ số sau dấu thập phân.
o TRANG_THAI (nvarchar (10), tùy chọn): Trạng thái của váy cưới, có thể
3. Thực thể: NHÂN VIÊN (NHAN_VIEN)
Mô tả: Thực thể này lưu trữ thông tin về các nhân viên làm việc tại cửa hàng, bao gồm quản lý và nhân viên cho thuê.
Thuộc tính:
o ID (int, khóa chính): Mã định danh duy nhất của nhân viên. Là số nguyên tự động tăng.
o TEN_NV (nvarchar (100), bắt buộc): Tên của nhân viên.
o SO_DIEN_THOAI (varchar (15), tùy chọn): Số điện thoại của nhân viên.
Giúp khách hàng liên lạc nhanh chóng.
o EMAIL (varchar (100), tùy chọn): Địa chỉ email của nhân viên.
o CHUC_VU (nvarchar (50), bắt buộc): Chức vụ của nhân viên trong cửa hàng. Ví dụ: "Quản lý", "Nhân viên".
4. Thực thể: HỢP ĐỒNG (HOP_DONG)
Mô tả: Thực thể này lưu trữ thông tin về hợp đồng thuê váy của khách hàng, bao gồm các chi tiết về ngày thuê, ngày trả và tổng số tiền thuê.
Thuộc tính:
o ID (int, khóa chính): Mã hợp đồng. Là số nguyên tự động tăng.
o ID_KHACH_HANG (int, khóa ngoại, tham chiếu đến
KHACH_HANG.ID): Mã khách hàng tham gia hợp đồng này.
o NHAN_VIEN_ID (int, khóa ngoại, tham chiếu đến NHAN_VIEN.ID): Mã nhân viên phụ trách hợp đồng.
o NGAY_THUE (date, bắt buộc): Ngày bắt đầu thuê váy. Mặc định là ngày hiện tại nếu không có giá trị.
o NGAY_TRA (date, bắt buộc): Ngày trả váy.
o TONG_TIEN (decimal (10,2), bắt buộc): Tổng tiền mà khách hàng phải trả cho hợp đồng này.
5. Thực thể: CHI TIẾT HỢP ĐỒNG (HOPDONGCHITIET)
Mô tả: Thực thể này lưu trữ thông tin chi tiết về các mẫu váy được thuê trong mỗi hợp đồng. Mỗi hợp đồng có thể bao gồm nhiều mẫu váy.
Thuộc tính:
o ID (int, khóa chính): Mã chi tiết hợp đồng. Là số nguyên tự động tăng.
o MA_HOP_DONG (int, khóa ngoại, tham chiếu đến HOP_DONG.ID): Mã hợp đồng.
o MA_VAY_CUOI (int, khóa ngoại, tham chiếu đến VAY_CUOI.ID): Mã váy cưới.
o SO_NGAY_THUE (int, tùy chọn): Số ngày thuê váy.
o GIA_THUE (decimal (10,2), bắt buộc): Giá thuê của từng mẫu váy cho mỗi ngày.
Mối quan hệ giữa các thực thể:
1. KHÁCH HÀNG ↔ HỢP ĐỒNG:
o Một khách hàng có thể ký nhiều hợp đồng thuê váy cưới (1: N).
o HOP_DONG.ID_KHACH_HANG là khóa ngoại tham chiếu đến KHACH_HANG.ID.
2. NHÂN VIÊN ↔ HỢP ĐỒNG:
o Mỗi hợp đồng được một nhân viên xử lý, có thể là nhân viên quản lý hoặc nhân viên cho thuê (1: N).
o HOP_DONG.NHAN_VIEN_ID là khóa ngoại tham chiếu đến NHAN_VIEN.ID.
3. HỢP ĐỒNG ↔ CHI TIẾT HỢP ĐỒNG:
o HOPDONGCHITIET.MA_HOP_DONG là khóa ngoại tham chiếu đến HOP_DONG.ID.
4. VÁY CƯỚI ↔ CHI TIẾT HỢP ĐỒNG:
o Một mẫu váy cưới có thể được thuê trong nhiều hợp đồng (1: N).
o HOPDONGCHITIET.MA_VAY_CUOI là khóa ngoại tham chiếu đến VAY_CUOI.ID.