intervengo anche io in questa discussione in quanto sto sviluppando un sito web che gestisca proprio una cosa del genere: prenotazione di servizi turistici (camere di albergo, coperti di ristoranti, letti in bed & breakfast, guide turistiche ecc).
La tua applicazione è multiutente, come la mia, ma, citando alka, sarebbe umanamente impossibile che due utenti appartenenti allo stesso gruppo (suppongo abbia gestito la tabella degli utenti in gruppi di appartenenza) possano inserire la prenotazione di uno stesso servizio in uno stesso istante. Qualora accadesse credo che nella tabella prenotazioni vengano generati due record distinti e separati per ognuna di esse.
Tuttavia quel che non riesco a comprendere è il senso che dai all'idea di univocità della chiave. Cosa intendi dire??? Per me l'univocità di ogni record consta nel suo campo id, autoincrementante, che non può essere modificato dall'utente.