2016-04-01 6 views
0

Ich möchte eine Datenbank für eine mobile App erstellen, die App zeigt dem Benutzer (Schüler) alle verfügbaren (frei/dispo) Klassenzimmer zum aktuellen Zeitpunkt an.Datenbank für verfügbare Klassenräume zum aktuellen Zeitpunkt

Zum Beispiel: ein Student öffnen die App Montag um 11:00 Uhr, die App zeigt Klassenzimmer 303 als verfügbar.

ClassroomLib: 301

|08:00-09:30|09:31-11:10|11:11-12:50|12:51-14:30|14:31-16:10|16:11-17:50| 
SAT| available|   |   |   |available |available | 
SUN|   |   |   |available |   |available | 
MON|   |   |available |   |   |available | 
TUE|   |   |   |available |   |   | 
WED|   |available |   |   |   |   | 
THU|   |   |   |   |available |available | 

ClassroomLib: 303

|08:00-09:30|09:31-11:10|11:11-12:50|12:51-14:30|14:31-16:10|16:11-17:50| 
SAT|   |available |   |   |available |available | 
SUN|   |   |   |   |   |   | 
MON|   |available |   |   |available |   | 
TUE|   |   |   |   |   |   | 
WED|   |   |available |   |available |available | 
THU|   |   |   |   |available |available | 

ich die db wie folgt aufgebaut:

CREATE TABLE classrooms(
classroomId INTEGER PRIMARY KEY AUTOINCREMENT, 
classroomLib VARCHAR(50) NOT NULL, 
); 
CREATE TABLE schedules(
dayWeek INTEGER PRIMARY KEY, 
hStart TEXT PRIMARY KEY, 
hEnd TEXT PRIMARY KEY, 
); 
CREATE TABLE dispos(
classroomId INTEGER PRIMARY KEY, 
dayWeek INTEGER PRIMARY KEY, 
hStart TEXT PRIMARY KEY, 
hEnd TEXT PRIMARY KEY, 
classroomDispo INTEGER, #boolean 
); 

ich viele Klassenzimmer bekam, und für jeden Klassenzimmer Ich habe 36 Einträge, gibt es eine bessere Architektur?

+0

Benötigen Sie wirklich Zeilen für ungeplante Zeitfenster? –

+0

Nein, ich brauche nicht, aber ich brauche eine Möglichkeit, einen Slot zu ändern/hinzuzufügen. –

Antwort

0

Teilen Sie die Anwendung.

Verwenden Sie die Datenbank zum Speichern roher Informationen - wahrscheinlich nur, welche Stunden welchen Aktivitäten zugewiesen sind.

Verwenden Sie die Anwendung, um abzuleiten, was "verfügbar" ist und die Ausgabe hübsch auszudrucken.

Diese Aufteilung macht "leben einfacher".

Verwandte Themen