Intro and System Description
I am currently designing a Database for a Room Booking system in a Hotel.
Client fills a Form / Request with following information about Room:
- amount of people in room
- rating of a room
- check in and check out date
Administrator has a dashboard with list of Forms from Clients, he will assign each Room for every Client manually.
After this User gets a Bill.
Database Design
This is actually a Sketch of my DB. I'll have following tables:
- Users
- Forms
- Rooms
- Bills
I am not considering table Passwords which contains Password's Hashes.
Questions
I would like to hear from you what is missing in my DB Design, what do you think about overall logic and correctness of relations between tables.
Best Answer
Without knowing exact and whole requirements we cannot design a complete data model. Let us assume the following business rules, it is based on your question.
Based on the above rules we have designed the following data model.![Hotel room booking system](https://i.stack.imgur.com/SH9co.jpg)
This model is a subset of Hotel Booking system. After the normalization process (check here), you will have more detailed and complete model.
In the above model Room rent is calculated based on the room type such as Single Room, Doubles Room, Family Room or Meeting Hall rather than number of people in the room.
And Room rent is changed from time to time, so we have included the from date and to date to have history of room rents. Also customer can use many payment types such as credit card, debit card, cash payment, so we are included payment type entity.
This model is based on assumption. I hope this model will help you in someway.
Thank you.