Gần đây tôi đã được hỏi câu hỏi phỏng vấn trên hệ thống đặt chỗ dựa trên giả thuyết và cách tôi thiết kế lược đồ cơ sở dữ liệu để giảm thiểu trùng lặp và tối đa hóa tính linh hoạt.Cơ sở dữ liệu Schema - Hệ thống đặt chỗ/sẵn có
Trường hợp sử dụng là quản trị viên sẽ nhập tính khả dụng của thuộc tính vào hệ thống. Có thể có nhiều khoảng thời gian được đặt. Ví dụ: từ ngày 1 tháng 4 năm 2009 đến ngày 14 tháng 4 năm 2009 và ngày 3 tháng 7 năm 2009 đến ngày 21 tháng 7 năm 2009.
Sau đó, người dùng chỉ có thể đặt trước trong khoảng thời gian có thời gian bằng hoặc ngắn hơn.
Làm cách nào bạn lưu trữ thông tin này trong cơ sở dữ liệu?
Bạn có sử dụng một cái gì đó đơn giản (thực sự đơn giản) như;
AVAILABILITY(property_id, start_date, end_date);
BOOKING(property_id, start_date, end_date);
Sau đó, bạn có thể dễ dàng xây dựng một trang web hiển thị lịch khả dụng với các khoảng thời gian đã được đặt blanked out. Nó sẽ được dễ dàng để xây dựng các báo cáo từ lược đồ cơ sở dữ liệu này? Nó có dễ dàng như nó có vẻ không?
Tôi sẽ đề xuất chính xác điều này. –
+1, Đây chính xác là những gì tôi đang tìm kiếm. Bất kỳ gợi ý nào về thời điểm có các phòng khác nhau trong khách sạn? –