ΑΝΑΛΥΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΟΣ
39
3.7.19 Πίνακας programme_history
Είναι ο πίνακας που χρησιμοποιείτε για να κρατάμε το ιστορικό των ωρολογίων προ-
γραμμάτων. Έχει τα ίδια πεδία με τον πίνακα programme συν ένα εξτρά πεδίο που δηλώ-
νει σε περίπτωση που αναφερόμαστε σε εαρινό ή χειμερινό εξάμηνο. Ο πίνακας αυτός
δεν μπορεί να επεξεργαστεί από τον χρήστη αλλά του δίνεται η δυνατότητα να διαγράψει
ένα ολόκληρο εξάμηνο. Η δομή του παρουσιάζεται στον Πίνακας 21.
Πίνακας 21: Πίνακας programme_history.
Όνομα
Τύπος
Κενό
Προεπιλογή
Πρόσθετα
ID
int(10)
Όχι
NULL
AUTO_INCREMENT
ID_semester_course
int(10)
Όχι
NULL
FOREIGN KEY
ID_day
int(10)
Όχι
NULL
FOREIGN KEY
ID_hour
int(10)
Όχι
NULL
ID_user
int(10)
Όχι
NULL
FOREIGN KEY
ID_schedule
int(10)
Όχι
NULL
FOREIGN KEY
ID_department
int(10)
Όχι
NULL
FOREIGN KEY
type
int(10)
Όχι
NULL
Αναλυτικά οι σειρές του Πίνακας 21 είναι:
▪ ID: Αποτελεί το πρωτεύον κλειδί του πίνακα.
▪ ID_semester_course: Είναι ξένο κλειδί και αποτελεί το ID του πίνακα semes-
ter_course. Αυτό το πεδίο το θέλουμε για να βρούμε το εξάμηνο που διδάσκετε
κάθε μάθημα.
▪ ID_day: Είναι ξένο κλειδί και αποτελεί το πεδίο σύνδεσης με τον πίνακα day.
Αυτό γίνεται ώστε να γνωρίζουμε ποια ημέρα διδάσκετε το μάθημα.
▪ ID_hour: Στο πεδίο ID_hour κρατάμε την ώρα που διδάσκετε το μάθημα.
▪ ID_user: Είναι ξένο κλειδί και αποτελεί το πεδίο σύνδεσης με τον πίνακα users.
Σε αυτό το πεδίο έχουμε το ID του καθηγητή που διδάσκει το μάθημα.
▪ ID_schedule: Είναι ξένο κλειδί και αποτελεί το πεδίο σύνδεσης με τον πίνακα
schedule. Εδώ αποθηκεύουμε το ID της χρονιάς που αφορά το πρόγραμμα.
▪ ID_department: Είναι ξένο κλειδί και αποτελεί το πεδίο σύνδεσης με τον πίνακα
department. Είναι σημαντικό ώστε να ξέρουμε σε ποιο πρόγραμμα σπουδών ανή-
κει κάθε γραμμή του πίνακα.
▪ Type: Σε αυτό το πεδίο αποθηκεύεται σε περίπτωση που αναφερόμαστε σε εα-
ρινό ή χειμερινό εξάμηνο.