A2 Jan 08 (nov)

15
entity1 entity2 link e.g. Street, Town, City are dependent on Postcode (and not on the table’s PRIMARY KEY) CustomerID HouseNum Street Town City Postcode dependent not dependent Employee number Employee name Rate category Project number Employee number Project number Project name Rate category Hourly rate 3NF
  • date post

    19-Oct-2014
  • Category

    Business

  • view

    440
  • download

    4

description

 

Transcript of A2 Jan 08 (nov)

Page 1: A2 Jan 08 (nov)

entity1 entity2link

e.g. Street, Town, City are dependent on

Postcode (and not on the table’s

PRIMARY KEY)CustomerID

HouseNumStreetTownCityPostcode

dependent

not dependent

Employee number Employee

nameRate category

Project numberEmployee number

Project number Project name

Rate category

Hourly rate

3NF

Page 2: A2 Jan 08 (nov)
Page 3: A2 Jan 08 (nov)

members

rides

sessions

Page 4: A2 Jan 08 (nov)

sessionsrides

members sessions

reservations

members sessions

Page 5: A2 Jan 08 (nov)

members reservations

ridessessions

reservations

members sessions

sessionsride

Page 6: A2 Jan 08 (nov)

members reservations

ridessessions

Session No. Session TimeSession DateRide Code673234 11:00:00 03/06/2008 FX018673235 14:00:00 03/06/2008 FX018673236 16:00:00 03/06/2008 FX018673237 11:00:00 04/06/2008 FX018673237 11:00:00 04/06/2008 FX018673237 11:00:00 04/06/2008 FX018673238 14:00:00 04/06/2008 FX018673239 16:00:00 04/06/2008 FX018673239 16:00:00 04/06/2008 FX018673239 16:00:00 04/06/2008 FX018673239 16:00:00 04/06/2008 FX018673240 11:00:00 03/06/2008 DX028673241 14:00:00 03/06/2008 DX028673242 16:00:00 03/06/2008 DX028673242 16:00:00 03/06/2008 DX028673242 16:00:00 03/06/2008 DX028673243 11:00:00 04/06/2008 DX028673244 14:00:00 04/06/2008 DX028673244 14:00:00 04/06/2008 DX028673245 16:00:00 04/06/2008 DX028673245 16:00:00 04/06/2008 DX028673245 16:00:00 04/06/2008 DX028673245 16:00:00 04/06/2008 DX028673246 11:00:00 03/06/2008 GC223etc. etc. etc. etc.

data file

Card NumberCustomer IDCustomer Last NameCustomer First NameCustomer Address Line 1Customer TownCustomer CountyCustomer Post CodePoints OutstandingPrint CardStudentSession NumberSession TimeSession DateNumber ReservedReserved Places AvailableRide CodeRide NamePoints ValueRide Price

session number (PK)datetimeplaces availableride code (FK)

ride code (PK)Ride NamePoints ValueRide Price

customerID (FK)session number (FK)

customerID (PK)etc.…Points OutstandingPrint CardStudent

Page 7: A2 Jan 08 (nov)

CustomerID needs to be Autonumberbut you can’t make a field Autonumber of it’s already got data in it!

• create the table• make a new CustomerID field with Autonumber• delete all records• use Append Query to add data again

Also, printcard and student can be set to Yes/No

Page 8: A2 Jan 08 (nov)
Page 9: A2 Jan 08 (nov)
Page 10: A2 Jan 08 (nov)

Create a form to add new members(remember that they will use it themselves)

• what do we want them to see?• how can we make the form open up ready for a new record?• what should their points total be?• how can we make their CustomerID appear as a membership number?• how can we prevent them from changing their own points?! (or anything else)

Page 11: A2 Jan 08 (nov)

existing

new

new member details• points default to 2000• mem. no. shows 5555 1946 before automatically generated number• tick box for student but not for print card

existing member details• mem. no. shows 5555 1946 before number• tick box for student but not for print card

reservations subform•date•time•ride•points

Page 12: A2 Jan 08 (nov)

existing

new

new member details• points default to 2000• mem. no. shows 5555 1946 before automatically generated number• tick box for student but not for print card

existing member details•mem. no. shows 5555 1946 before automatically generated number• tick box for student but not for print card

reservations subform•date•time•ride•points

make a reservation(choose a session on a ride)

what do we need to store?

already got(can pull from previous form)need to choose a ride

and date/time first

Page 13: A2 Jan 08 (nov)

existing

new

new member details• points default to 2000• mem. no. shows 5555 1946 before automatically generated number• tick box for student but not for print card

existing member details•mem. no. shows 5555 1946 before automatically generated number• tick box for student but not for print card

reservations subform•date•time•ride•points

choose session

make a reservation(choose a session on a ride)

drop down listuse query to get list of rides, dates, times

Why is a query needed?Why not just get fromSession table?

What is wrong with the list we get?How could we improve it?

simplest way (but not the best)

‘append’ query can addsession number andcustomerID to Reservation table

Page 14: A2 Jan 08 (nov)

existing

new

new member details• points default to 2000• mem. no. shows 5555 1946 before automatically generated number• tick box for student but not for print card

existing member details•mem. no. shows 5555 1946 before automatically generated number• tick box for student but not for print card

reservations subform•date•time•ride•points

choose ride

make a reservation(choose a session on a ride)

choose session

drop down list(shows name but is really storing rideID)

what sessions are available?(query needed to get this information. Pull rideID from last form. Base drop down list on this query)

better way (easier choice)

‘append’ query can addsession number andcustomerID to Reservation table

Page 15: A2 Jan 08 (nov)

existing

new

new member details• points default to 2000• mem. no. shows 5555 1946 before automatically generated number• tick box for student but not for print card

existing member details•mem. no. shows 5555 1946 before automatically generated number• tick box for student but not for print card

reservations subform•date•time•ride•points

choose ride

make a reservation(choose a session on a ride)

choose session

points

price

drop down list(shows name but is really storing rideID)

If we include these these fields then they can be used later to check if enough points

what sessions are available?(query needed to get this information. Pull rideID from last form. Base drop down list on this query)

even better way (allows for expansion later)

‘append’ query can addsession number andcustomerID to Reservation table