background image

Κεφάλαιο 3 - Ανάπτυξη και Υλοποίηση της Εφαρμογής 
 

 

 

35 

 

επισκέπτη μέσω του αναγνωριστικού του αριθμού SID. Έτσι βλέπουμε και στην Εικόνα 7 πως 
ο πίνακας αυτός αντικατοπτρίζει τον πίνακα “project_files” με έλλειψη πολλών δευτερεύων 
γνωρισμάτων αλλά και την εισαγωγή του  γνωρίσματος  “sid”, τύπου “int(10)”. Το νέο αυτό 
γνώρισμα  είναι  που  συνδέει  το  κάθε  αρχείο  με  τον  αντίστοιχο  επισκέπτη.  Παρόλο  των 
περιορισμένων δυνατοτήτων που προσφέρονται στους επισκέπτες, η διατήρηση των αρχείων 
τους  με  τρόπο  συμβατό με  το  υπόλοιπο  σύστημα  είναι  αναγκαία.  Έτσι  αν  και  φαινομενικά 
αποκομμένος, ο πίνακας “sid_files” είναι ένας πίνακας που επιτρέπει μία σωστή πρώτη επαφή 
με  την  εφαρμογή  μας,  προσφέροντας  αποθηκευτικό  χώρο  για  τις  βασικές  λειτουργίες  που 
συναντά ένας επισκέπτης. 

 

Εικόνα 7: Η δομή του πίνακα sid_files 

 

3.1.5 Περιγραφή του Πίνακα projects_editors 
 

 

Ο πίνακας “projects_editors” είναι ένας πίνακας διασύνδεσης. Επιτρέπει την σύνδεση 

χρηστών  με  τα  έργα.  Παρόλο  που  κάτι  τέτοιο  είναι  εφικτό  με  την  χρήση  γνωρισμάτων  της 
λογικής ξένου κλειδιού, θα χρειαζόταν σημαντική επεξεργασία των στοιχείων τους και δεν θα 
επέτρεπε την εισαγωγή βαθμίδων δικαιωμάτων. Για παράδειγμα, είναι δυνατό σε κάθε έργο να 
έχουμε  το  γνώρισμα  “editor”  όπου  θα  κρατήσουμε  το  πρωτεύον  κλειδί  για  τον  αντίστοιχο 
χρήστη  από  τον  πίνακα  “users”.  Αυτό  όμως  δεν  μας  επιτρέπει  την  εισαγωγή  πολλαπλών 
συγγραφών.  Κάτι  τέτοιο  θα  μπορούσε  να  γίνει  χωρίζοντας  τα  πρωτεύων  κλειδιά  τους  με 
ερωτηματικά ”;”. Αυτή η αντιμετώπιση όμως οδηγεί στην ανάγκη επεξεργασίας των δεδομένων 
του γνωρίσματος τόσο για την ίδια την ανάγνωση όσο και για την επεξεργασία του. 

 

Εικόνα 8: Η δομή του πίνακα projects_editors