sql >> Databasteknik >  >> RDS >> Mysql

Frikoppling av MySQL-data kontra användarvänlighet

Låt mig börja svara på detta med en berättelse. (Något förenklat.)

2011-01-01 Jag reserverar ett rum för två nätter, 2011-03-01 och 2011-03-02. Du berättar inte för mig vilket rum jag ska få. (Eftersom du inte vet ännu vilket rum jag får.) Du säg att det kommer att kosta $40 per natt. Jag har inga kuponger. Du anger min bokning i din dator, trots att du redan är helt reserverad för båda dessa nätter. Faktum är att du redan har en person på väntelistan för båda dessa nätter. (Överbokning är en normal sak, inte en onormal sak.)

2011-01-15 Du höjer priserna för varje rum med $5.

2011-02-01 Jag ringer igen för att se till att du fortfarande har min bokning. Du bekräftar att jag har en reservation för två nätter, 2011-03-01 och 2011-03-02, för $40. (Inte 45 USD, din nuvarande kurs. Det var inte vår affär. Vår affär var 40 USD per natt.)

2011-02-12 En person ringer och avbokar sin bokning för 2011-03-01 och 2011-03-02. Du har fortfarande inte ett rum som du säkert vet att jag kommer att kunna checka in på. Den andra personen från väntelistan har nu ett rum; Jag är fortfarande på väntelistan.

2011-02-15 En person ringer och avbokar sin bokning för 2011-03-01 och 2011-03-02. Nu har jag ett rum.

2011-03-01 Jag checkar in med en kupong.

  • Du kan lagra det "aktuella" eller "standardpriset" med varje rum, eller med varje klass av rum, men du måste lagra priset som vi kommit överens om med myreservation.
  • Bokning reserverar inte rum; de reserverar potentiella rum. Du vet inte vem som kommer att gå tidigt, vem som kommer att gå sent, vem som kommer att avbryta, och så vidare. (Baserat på min erfarenhet, då och då kommer ett rum att förseglas med brottsplatstejp. Du vet inte hur länge det kommer att pågå heller.)
  • Du kan ha fler bokningar än rumsnätter.
  • Kuponger kan förmodligen visas när som helst innan utcheckning.

Jag tror inte det. Priset du gick med på bör finnas i själva bokningen. Specifika rum kan inte tilldelas på ett rimligt sätt förrän i sista minuten. Om det finns en kupong per bokning kan den också behöva lagras med bokningen.

Det enda rapporteringsproblemet är att se till att dina rapporter tydligt rapporterar hur mycket förväntade intäkter som bör ignoreras på grund av överbokning.



  1. Tio tips om hur du uppnår MySQL- och MariaDB-säkerhet

  2. mysql motsvarande datatyper

  3. MySQL-fråga med alias som inte använder ett index

  4. Den här sidan kan inte nås efter att du har flyttat WordPress-sidan