Thanks - there goes my design.....
Anyway I thank you - it is a very interesting discussion and I can just wait some more time before submitting.
I thought I was done with my implementation but I will do some argumentation and hopefully someone will comment to see if it is useable or I have to change my design (and implementation):
1. My current application only supports search and book
2. I have nothing stated in my assignment regarding if name/location is the same then it is an identical record - therefore I assume that if all fields are equal then it is a duplicate record
3. I may assume that only 1 program accesses the DB at a time according to my assignment (nobody using the data access class at the same time my clients does - no alone mode usage when running networked etc.)
4. Therefore a delete can be safely done - no clients using the application at that time - so the situation Greg refers to can never happen
5. I am aware that in the future when the application must support delete / update in generel another approach might have to be implemented
6. I use notifications to tell clients when a record is booked from another client
7. 2 client cannot book the same record - I check to see if the field is booked after taking the lock for the record. If it is - the user will be noticed.
How does such an argumentation sound to you?