Hi,
I am reseaching into the best method for implementing a booking system
data structure. My booking system in full will be used to store
details on landlords apartments .. this part isnt too big an issue for
me as I can have a table called 'landlord' and a table called
'property' which will both tie up with one another (one property will
have one landlord, one landlord may have many properties). The part Im
unsure about is where customers will choose an apartment to stay for a
few nights and what the best way to go about this is. My idea is:
booking - this table will contain a single booking entity such as
customer name, contact details, date_booked, additional_notes (ie.
pick up keys at 2pm) .. but will not contain dates, nights. It will
contain a foriegn key column which will tie it up with the property (1
property may have many booking entries, each booking will only even
have of one property).
booking_night - this table will contain nights booked and each row
will be one night. It will contain a foriegn key column called
booking_id which will tie up with the booking table primary key. One
booking entry may contain 1...* booking_table rows dependant on the
number of nights booked for that customer (4 rows = 4 nights).
Now I think this is the best way to go about it but would really
appreciate some advice if possible. One of the main challenges will be
implementing the availability calendar (well, only coz Ive never done
one before) so this is why i want individual entries for the nights so
the days of the month would check if they have a entry in
booking_night for that property. I am hopefully that this will host
many many apartments so if I can adopt the most efficient method of
storing data for performance then Im off to a good start. Cheers
Burnsy
David Cressey - 27 Jan 2008 14:02 GMT
> Hi,
>
[quoted text clipped - 30 lines]
>
> Burnsy
Check out this website: http://www.databaseanswers.org/
There are hundreds of data models out there. You might want to look at one
that's about hotel reservations, since your problem sounds a little like
that problem, even though your properties are not hotel rooms.
You may need to adapt one of the models you get there, but you you'll get a
fairly close approximation.
An alternative would be to learn how to model data, and how to design a
database. That's a lot of work, if you are only going to design one
database in your life.