Βασικές αρχές σχεδίασης βάσης δεδομένων

Βασικές αρχές σχεδίασης βάσης δεδομένων

Σημείωση:  Θέλουμε να σας παρέχουμε το πιο πρόσφατο περιεχόμενο βοήθειας στη γλώσσα σας όσο πιο σύντομα γίνεται. Αυτή η σελίδα έχω μεταφραστεί μέσω αυτοματοποιημένης διαδικασίας και ενδεχομένως να περιέχει γραμματικά λάθη και ανακρίβειες. Ο σκοπός μας είναι αυτό το περιεχόμενο να σας φανεί χρήσιμο. Μπορείτε να μας ενημερώσετε στο κάτω μέρος αυτής της σελίδας εάν οι πληροφορίες σάς φάνηκαν χρήσιμες; Εδώ θα βρείτε το άρθρο στα Αγγλικά , για να το συμβουλεύεστε εύκολα.

Μια σωστά σχεδιασμένη βάση δεδομένων σάς παρέχει πρόσβαση σε ενημερωμένες, ακριβείς πληροφορίες. Επειδή η σωστή σχεδίαση είναι απαραίτητες για την επίτευξη των στόχων σας στο θέμα εργασία με μια βάση δεδομένων, αφιερώστε χρόνο που απαιτείται για να μάθετε τις αρχές της καλής σχεδίασης έχει νόημα. Στο τέλος, είναι πολύ πιο πιθανό να καταλήξετε με μια βάση δεδομένων που ικανοποιεί τις ανάγκες σας και εύκολα δέχεται αλλαγή.

Σε αυτό το άρθρο παρέχει οδηγίες για το σχεδιασμό μιας βάσης δεδομένων επιφάνειας εργασίας. Θα μάθετε πώς να αποφασίσετε ποιες πληροφορίες που χρειάζεστε, πώς να χωρίσετε αυτές τις πληροφορίες σε κατάλληλους πίνακες και στήλες και πώς αυτοί οι πίνακες σχετίζονται μεταξύ τους. Πρέπει να διαβάσετε αυτό το άρθρο πριν να δημιουργήσετε την πρώτη βάση δεδομένων υπολογιστή.

Σημαντικό: Access παρέχει εμπειρίες σχεδίασης που σας επιτρέπουν να δημιουργήσετε εφαρμογές βάσεων δεδομένων για το Web. Πολλά θέματα σχεδίασης είναι διαφορετικά, όταν σχεδιάζετε για το Web. Σε αυτό το άρθρο δεν συζητήσετε σχεδίασης εφαρμογής βάσης δεδομένων Web. Για περισσότερες πληροφορίες, ανατρέξτε στο άρθρο Δημιουργία βάσης δεδομένων για την κοινή χρήση στο Web.

Σε αυτό το άρθρο

Κάποιοι όροι βάσης δεδομένων να γνωρίζετε

Τι είναι η καλή σχεδίαση βάσης δεδομένων;

Η διαδικασία σχεδίασης

Καθορισμός του σκοπού της βάσης δεδομένων σας

Εύρεση και οργάνωση των απαιτούμενων πληροφοριών

Διαίρεση των πληροφοριών σε πίνακες

Μετατροπή των στοιχείων πληροφοριών σε στήλες

Καθορισμός πρωτεύοντα κλειδιά

Δημιουργία σχέσεων πινάκων

Βελτίωση της σχεδίασης

Εφαρμογή των κανόνων κανονικοποίηση


Κάποιοι όροι βάσης δεδομένων να γνωρίζετε

Access οργανώνουν τις πληροφορίες σε πίνακες: λίστες γραμμών και στηλών που θυμίζουν Σημειωματάριο λογιστή ή ένα υπολογιστικό φύλλο. Σε μια απλή βάση δεδομένων, ενδέχεται να έχετε μόνο έναν πίνακα. Για περισσότερες βάσεις δεδομένων που θα χρειαστείτε περισσότερες από μία. Για παράδειγμα, ίσως έχετε έναν πίνακα που αποθηκεύει πληροφορίες σχετικά με προϊόντα, έναν άλλο πίνακα που αποθηκεύει πληροφορίες για τις παραγγελίες και έναν άλλο πίνακα με πληροφορίες σχετικά με τους πελάτες.

Εικόνα τριών πινάκων σε φύλλα δεδομένων

Κάθε γραμμή είναι πιο σωστά που ονομάζεται εγγραφήκαι κάθε στήλη, ένα πεδίο. Μια εγγραφή είναι ένα χαρακτηριστικό και συνεπή τρόπο για να συνδυάσετε πληροφορίες σχετικά με κάτι. Ένα πεδίο είναι ένα στοιχείο των πληροφοριών — ένας τύπος στοιχείου που εμφανίζεται σε κάθε εγγραφή. Στον πίνακα προϊόντα, για παράδειγμα, κάθε γραμμή ή εγγραφή περιέχει πληροφορίες σχετικά με ένα προϊόν. Κάθε στήλη ή πεδίο περιέχει κάποιον τύπο πληροφοριών σχετικά με αυτό το προϊόν, όπως το όνομα ή την τιμή.

Αρχή της σελίδας

Τι είναι η καλή σχεδίαση βάσης δεδομένων;

Ορισμένες αρχές που καθοδηγούν τη διαδικασία σχεδίασης βάσης δεδομένων. Η πρώτη αρχή είναι ότι οι διπλότυπες πληροφορίες (ονομάζεται επίσης πλεονάζοντα δεδομένα) είναι εσφαλμένες, επειδή σπαταλούν χώρο και αυξάνει την πιθανότητα σφαλμάτων και ασυνεπειών. Η δεύτερη αρχή είναι ότι η ακρίβειας και πληρότητα των πληροφοριών είναι σημαντικές. Εάν η βάση δεδομένων περιέχει εσφαλμένες πληροφορίες, οι εκθέσεις που ελκυστική πληροφορίες από τη βάση δεδομένων θα περιέχει επίσης εσφαλμένες πληροφορίες. Ως αποτέλεσμα, τις αποφάσεις σας που βασίζονται σε αυτές τις εκθέσεις θα είναι βασισμένες σε παραπληροφόρηση.

Μια καλή σχεδίαση βάσης δεδομένων είναι, επομένως, ένα που:

  • Διαιρεί τις πληροφορίες σας σε πίνακες βάσει θέματος για να μειώσετε τα πλεονάζοντα δεδομένα.

  • Παρέχει πρόσβαση με τις πληροφορίες που απαιτούνται για την ένωση τις πληροφορίες στους πίνακες όπως απαιτείται.

  • Βοηθά στην υποστήριξη και βεβαιωθείτε ότι η ακρίβεια και η ακεραιότητα των πληροφοριών σας.

  • Εξυπηρετεί την επεξεργασία των δεδομένων και δημιουργία αναφορών τις ανάγκες.

Αρχή της σελίδας

Η διαδικασία σχεδίασης

Η διαδικασία σχεδίασης αποτελείται από τα παρακάτω βήματα:

  • Προσδιορίστε το σκοπό της βάσης δεδομένων σας   

    Αυτό σας βοηθά να προετοιμαστείτε για τα υπόλοιπα βήματα.

  • Βρείτε και να οργανώσετε τις πληροφορίες που απαιτούνται   

    Συλλογή όλους τους τύπους των πληροφοριών που μπορεί να θέλετε να καταγράψετε στη βάση δεδομένων, όπως το όνομα και μια σειρά αριθμό προϊόντος.

  • Διαίρεση των πληροφοριών σε πίνακες   

    Χωρίστε τα στοιχεία πληροφοριών σε κύριες οντοτήτων ή θέματα, όπως τα προϊόντα ή τις παραγγελίες. Κάθε θέμα γίνεται στη συνέχεια, έναν πίνακα.

  • Μετατροπή στοιχεία πληροφοριών σε στήλες   

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

  • Καθορισμός πρωτεύοντα κλειδιά   

    Επιλέξτε το πρωτεύον κλειδί κάθε πίνακα. Το πρωτεύον κλειδί είναι μια στήλη που χρησιμοποιείται για να προσδιορίσει μοναδικά κάθε γραμμή. Ένα παράδειγμα μπορεί να είναι το Αναγνωριστικό προϊόντος ή αναγνωριστικό παραγγελίας.

  • Ρυθμίστε τις σχέσεις πινάκων   

    Εξετάστε κάθε πίνακα και Αποφασίστε πώς σχετίζεται τα δεδομένα σε έναν πίνακα με τα δεδομένα σε άλλους πίνακες. Προσθήκη πεδίων σε πίνακες ή δημιουργήστε νέα πίνακες για να διευκρινίσετε τις σχέσεις, όπως απαιτείται.

  • Βελτίωση του σχεδιασμού σας   

    Αναλύστε τη σχεδίαση για σφάλματα. Δημιουργήστε τους πίνακες και προσθέστε μερικές εγγραφές του δείγματος δεδομένων. Δείτε εάν μπορείτε να λάβετε τα αποτελέσματα που θέλετε από τους πίνακές σας. Κάντε τις απαραίτητες προσαρμογές στη σχεδίαση.

  • Εφαρμογή κανόνων κανονικοποίηση   

    Εφαρμόστε τους κανόνες κανονικοποίηση δεδομένων για να δείτε εάν τους πίνακές σας έχουν δομή σωστά. Κάντε προσαρμογές με τους πίνακες, όπως απαιτείται.

Αρχή της σελίδας

Καθορισμός του σκοπού της βάσης δεδομένων σας

Είναι καλή ιδέα να σημειώσετε το σκοπό της βάσης δεδομένων σε χαρτί — ο σκοπός, τον τρόπο που θέλετε να χρησιμοποιήσετε και ποιος θα το χρησιμοποιήσουν. Για μια μικρή βάση δεδομένων για μια αρχική με βάση επιχειρήσεις, για παράδειγμα, ενδέχεται να γράφετε μια απλή ενέργεια όπως "η βάση δεδομένων πελατών διατηρεί μια λίστα των πληροφοριών πελάτη με σκοπό την παραγωγή στοιχεία αλληλογραφίας και αναφορές". Εάν η βάση δεδομένων είναι πιο σύνθετη ή χρησιμοποιείται από πολλά άτομα, όπως συμβαίνει συχνά σε μια εταιρεία, ο σκοπός μπορεί εύκολα να μιας παραγράφου ή περισσότερων και πρέπει να περιλαμβάνει πότε και πώς κάθε άτομο θα χρησιμοποιήσει τη βάση δεδομένων. Η ιδέα είναι να έχετε μια καλά ανεπτυγμένη δήλωση αποστολής που μπορεί να αναφέρεται σε ολόκληρη τη διαδικασία σχεδίασης. Αντιμετωπίζετε όπως δήλωση σας βοηθά να εστιάσετε τους στόχους σας κατά τη λήψη αποφάσεων.

Αρχή της σελίδας

Εύρεση και οργάνωση των απαιτούμενων πληροφοριών

Για να βρείτε και οργανώστε τις απαιτούμενες πληροφορίες, ξεκινήστε με τις υπάρχουσες πληροφορίες. Για παράδειγμα, ενδέχεται να μπορείτε να καταγράψετε παραγγελίες αγοράς ένα καθολικό ή να διατηρείτε πληροφορίες πελατών σε χαρτί φόρμες σε μια αρχειοθήκη. Συγκεντρώστε αυτά τα έγγραφα και καταγράψτε κάθε τύπο πληροφοριών που εμφανίζεται (για παράδειγμα, κάθε πλαίσιο που μπορείτε να συμπληρώσετε σε μια φόρμα). Εάν δεν έχετε όλες τις υπάρχουσες φόρμες, φανταστείτε ότι πρέπει να σχεδιάσετε μια φόρμα για να καταγράψετε τις πληροφορίες πελάτη. Ποιες πληροφορίες θα τοποθετήσετε στη φόρμα; Ποια πλαίσια fill-in θα μπορείτε να δημιουργήσετε; Προσδιορίστε και καταγράψτε το καθένα από αυτά τα στοιχεία. Για παράδειγμα, ας υποθέσουμε ότι αυτή τη στιγμή διατηρείτε τη λίστα πελατών σε κάρτες ευρετηρίου. Εξέταση αυτών των καρτών ίσως δείξει ότι κάθε κάρτα περιέχει πελάτες όνομα, διεύθυνση, πόλη, νομό, Ταχυδρομικός κώδικας και τον αριθμό τηλεφώνου. Κάθε ένα από αυτά τα στοιχεία αντιπροσωπεύει μια πιθανή στήλη σε έναν πίνακα.

Καθώς προετοιμάζετε αυτήν τη λίστα, μην ανησυχείτε σχετικά με τη λήψη το τέλειο την πρώτη. Αντί για αυτό, κάθε στοιχείο που παρέχεται για να έχετε υπόψη σας λίστας. Εάν κάποιος άλλος θα χρησιμοποιούν τη βάση δεδομένων, ζητήστε τους ιδέες, πολύ. Μπορείτε να τελειοποιήσετε τη λίστα αργότερα.

Στη συνέχεια, εξετάστε το ενδεχόμενο να τους τύπους των εκθέσεις ή στοιχεία αλληλογραφίας, ίσως θέλετε να παραγάγετε από τη βάση δεδομένων. Για παράδειγμα, ίσως θέλετε μια αναφορά Πωλήσεις προϊόντων για να εμφανίσετε πωλήσεων ανά περιοχή ή μια συνοπτική έκθεση απογραφής που εμφανίζει επίπεδα απογραφής προϊόντων. Μπορεί επίσης να θέλετε να δημιουργήσετε φόρμες επιστολών για να στείλετε στους πελάτες που ανακοινώνει ένα συμβάν πώληση ή προσφέρει μια premium. Σχεδίαση της αναφοράς σας υπόψη και φανταστείτε πώς θα δείχνει. Ποιες πληροφορίες θα τοποθετήσετε στην έκθεση; Κάθε στοιχείο λίστας. Κάντε το ίδιο για τη φόρμα επιστολών και για οποιαδήποτε άλλη έκθεση που υπολογίζετε τη δημιουργία.

Ένα άτομο που φαντάζεται μια έκθεση απογραφής προϊόντων

Σκέψη για τις αναφορές και τα στοιχεία αλληλογραφίας που μπορεί να θέλετε να δημιουργήσετε σας βοηθά να προσδιορίσετε τα στοιχεία που θα χρειαστείτε στη βάση δεδομένων σας. Για παράδειγμα, ας υποθέσουμε ότι δίνετε στους πελάτες σας τη δυνατότητα να επιλέξετε να (ή εκτός) περιοδικές ενημερώσεις ηλεκτρονικού ταχυδρομείου και θέλετε να εκτυπώσετε μια λίστα με τα άτομα που έχετε επιλέξει. Για να καταγράφετε αυτές τις πληροφορίες, μπορείτε να προσθέσετε μια στήλη "Αποστολή ηλεκτρονικού ταχυδρομείου" στον πίνακα πελατών. Για κάθε πελάτη, μπορείτε να ρυθμίσετε το πεδίο να Ναι ή όχι.

Η απαίτηση για την αποστολή μηνυμάτων ηλεκτρονικού ταχυδρομείου στους πελάτες προτείνει ένα άλλο στοιχείο για την εγγραφή. Όταν γνωρίζετε ότι ένας πελάτης θέλει να λαμβάνετε μηνύματα ηλεκτρονικού ταχυδρομείου, θα πρέπει επίσης να γνωρίζετε τη διεύθυνση ηλεκτρονικού ταχυδρομείου στην οποία θέλετε να τους στείλετε. Επομένως, πρέπει να καταγράψετε μια διεύθυνση ηλεκτρονικού ταχυδρομείου για κάθε πελάτη.

Είναι λογικό να συντάξετε ένα πρωτότυπο για κάθε έκθεση ή κατάλογο εξόδου και να σκεφτείτε ποια στοιχεία θα πρέπει να δημιουργήσουν την αναφορά. Για παράδειγμα, όταν εξετάζετε μιας φόρμας επιστολών, μπορεί να προκύψουν μερικά πράγματα που πρέπει να έχετε υπόψη σας. Εάν θέλετε να συμπεριλάβετε proper χαιρετισμού — για παράδειγμα, τη συμβολοσειρά "Κ.", "Κα" ή "Για" που ξεκινά μια χαιρετισμού, θα πρέπει να δημιουργήσετε ένα στοιχείο χαιρετισμού. Επίσης, μπορείτε να ξεκινήσετε συνήθως μια επιστολή με "Κοίτα Αγαπητέ κ.", αντί για "Αγαπητέ. Κ Sylvester κοίτα". Αυτό προτείνουν συνήθως που θα θέλετε να αποθηκεύσετε το επώνυμο ξεχωριστά από το όνομα.

Ένα σημείο-κλειδί να θυμάστε είναι ότι θα πρέπει να μπορείτε να διασπάσετε κάθε τμήμα των πληροφοριών σε μικρότερα χρήσιμα μέρη. Στην περίπτωση ένα όνομα, για να κάνετε το επώνυμο άμεσα διαθέσιμο, θα διασπάσετε το όνομα σε δύο μέρη — όνομα και επώνυμο. Για να ταξινομήσετε μια έκθεση κατά επώνυμο, για παράδειγμα, είναι χρήσιμο να έχετε το τελευταίο όνομα πελάτη αποθηκεύονται ξεχωριστά. Σε γενικές γραμμές, εάν θέλετε να ταξινομήσετε, αναζήτηση, τον υπολογισμό ή αναφοράς που βασίζεται σε ένα στοιχείο πληροφοριών, θα πρέπει να τοποθετείτε αυτό το στοιχείο στο δικό του πεδίου.

Σκεφτείτε τις ερωτήσεις που ενδέχεται να θέλετε τη βάση δεδομένων για να απαντήσετε. Για παράδειγμα, το πλήθος των πωλήσεων του προϊόντος σας διαθέσιμης κλείσετε περασμένο μήνα; Όπου live καλύτερα τους πελάτες σας; Ποιος είναι ο προμηθευτής για το προϊόν σας με τις περισσότερες πωλήσεις; Πρόβλεψη αυτών των ερωτήσεων σας βοηθά να μηδέν σε πρόσθετα στοιχεία για την εγγραφή.

Μετά τη συγκέντρωση αυτών των πληροφοριών, είστε έτοιμοι για το επόμενο βήμα.

Αρχή της σελίδας

Διαίρεση των πληροφοριών σε πίνακες

Για να διαιρέσετε τις πληροφορίες σε πίνακες, επιλέξτε την κύρια οντοτήτων ή τα θέματα. Για παράδειγμα, μετά την εύρεση και οργάνωση των πληροφοριών για μια βάση δεδομένων πωλήσεων προϊόντων, λίστα προκαταρκτικού μπορεί να μοιάζει κάπως έτσι:

Χειρόγραφα στοιχεία πληροφοριών ομαδοποιημένα κατά θέματα

Η κύρια οντοτήτων που φαίνεται εδώ είναι τα προϊόντα, οι προμηθευτές, τους πελάτες και παραγγελίες. Επομένως, έχει νόημα να ξεκινήσει με αυτούς τους τέσσερις πίνακες: μία για πληροφορίες σχετικά με τα προϊόντα, μία για δεδομένα σχετικά με προμηθευτές, μία για πληροφορίες σχετικά με τους πελάτες και μία για δεδομένα σχετικά με τις παραγγελίες. Παρόλο που αυτή δεν ολοκληρωθεί στη λίστα, είναι ένα καλό σημείο εκκίνησης. Μπορείτε να συνεχίσετε για να περιορίσετε αυτήν τη λίστα μέχρι να έχετε ένα σχέδιο που λειτουργεί σωστά.

Όταν εξετάζετε προκαταρκτικού λίστα των στοιχείων για πρώτη φορά, ίσως έχετε την τάση να τις τοποθετήσετε όλα σε έναν πίνακα, αντί για τους τέσσερις που εμφανίζονται στην προηγούμενη εικόνα. Θα μάθετε εδώ για ποιο λόγο που δεν είναι καλή ιδέα. Εξετάστε το ενδεχόμενο για λίγο, τον πίνακα που εμφανίζεται εδώ:

Εικόνα που δείχνει έναν πίνακα που περιέχει και προϊόντα και προμηθευτές

Σε αυτήν την περίπτωση, κάθε γραμμή περιέχει πληροφορίες σχετικά με το προϊόν και για τον προμηθευτή. Επειδή μπορείτε να έχετε πολλά προϊόντα από τον ίδιο προμηθευτή, οι πληροφορίες ονόματος και διεύθυνσης προμηθευτή πρέπει να επαναληφθεί πολλές φορές. Αυτό καταναλώνει χώρο στο δίσκο. Καταγραφή των πληροφοριών του προμηθευτή μόνο μία φορά σε έναν ξεχωριστό πίνακα προμηθευτές και, στη συνέχεια, σύνδεση αυτόν τον πίνακα για τον πίνακα προϊόντα, είναι μια πολύ καλύτερη λύση.

Ένα δεύτερο πρόβλημα με αυτή τη σχεδίαση παρουσιάζεται όταν πρέπει να τροποποιήσετε τις πληροφορίες σχετικά με τον προμηθευτή. Για παράδειγμα, ας υποθέσουμε ότι πρέπει να αλλάξετε τη διεύθυνση ενός προμηθευτή. Επειδή εμφανίζεται σε πολλές θέσεις, ίσως κατά λάθος να αλλάξετε τη διεύθυνση σε ένα σημείο αλλά να ξεχάσετε να την αλλάξετε στα άλλα. Εγγραφή της διεύθυνσης του προμηθευτή σε μία μόνο θέση λύνει το πρόβλημα.

Όταν σχεδιάζετε τη βάση δεδομένων, δοκιμάστε πάντα για την εγγραφή κάθε δεδομένο μόνο μία φορά. Εάν διαπιστώσετε ότι επαναλαμβάνεται τις ίδιες πληροφορίες σε περισσότερα από ένα σημείο, όπως τη διεύθυνση ενός συγκεκριμένου προμηθευτή, τοποθετήστε αυτές τις πληροφορίες σε έναν νέο πίνακα.

Τέλος, ας υποθέσουμε ότι υπάρχει μόνο ένα προϊόν που παρέχεται από επώνυμη οινοποιεία και θέλετε να διαγράψετε το προϊόν, αλλά να διατηρήσετε τις πληροφορίες για το όνομα και τη διεύθυνση προμηθευτή. Πώς θα διαγράψετε την εγγραφή προϊόντος χωρίς να χάσετε τις πληροφορίες του προμηθευτή; Δεν μπορείτε να κάνετε. Επειδή κάθε εγγραφή περιέχει τις πληροφορίες του προϊόντος, καθώς και δεδομένα σχετικά με έναν προμηθευτή, δεν μπορείτε να διαγράψετε ένα χωρίς να διαγράψετε την άλλη. Για να διατηρείτε ξεχωριστά αυτά τα δεδομένα, πρέπει να διαιρέσετε έναν πίνακα σε δύο: έναν πίνακα για πληροφορίες προϊόντος, και έναν άλλο πίνακα για πληροφορίες προμηθευτή. Διαγραφή μιας εγγραφής προϊόντος θα πρέπει να διαγράψετε μόνο τα δεδομένα σχετικά με το προϊόν, δεν τα δεδομένα σχετικά με τον προμηθευτή.

Αφού έχετε επιλέξει το θέμα που αντιπροσωπεύεται από έναν πίνακα, στήλες σε αυτόν τον πίνακα πρέπει να αποθηκεύονται μόνο δεδομένα σχετικά με το θέμα. Για παράδειγμα, ο πίνακας προϊόντος πρέπει να αποθηκεύονται δεδομένα μόνο σχετικά με τα προϊόντα. Επειδή η διεύθυνση του προμηθευτή είναι ένα δεδομένο σχετικά με τον προμηθευτή και όχι ένα δεδομένο σχετικά με το προϊόν, ανήκει στον πίνακα προμηθευτή.

Αρχή της σελίδας

Μετατροπή των στοιχείων πληροφοριών σε στήλες

Για να καθορίσετε τις στήλες σε έναν πίνακα, Αποφασίστε ποιες πληροφορίες που χρειάζεστε για να παρακολουθείτε για το θέμα που καταγράφεται στον πίνακα. Για παράδειγμα, για τον πίνακα "πελάτες", δώστε ένα όνομα, διεύθυνση, Πόλη-Περιφέρεια-Zip, αποστολή ηλεκτρονικού ταχυδρομείου, τη διεύθυνση ηλεκτρονικού ταχυδρομείου και χαιρετισμού αποτελούν μια καλή αρχική λίστα των στηλών. Κάθε εγγραφή του πίνακα περιέχει το ίδιο σύνολο στηλών, επομένως μπορείτε να αποθηκεύσετε το όνομα, διεύθυνση, Πόλη-Περιφέρεια-Zip, αποστολή ηλεκτρονικού ταχυδρομείου, χαιρετισμού και μηνύματα ηλεκτρονικού ταχυδρομείου των πληροφοριών της διεύθυνσης για κάθε εγγραφή. Για παράδειγμα, η διεύθυνση στήλη περιέχει διευθύνσεις πελατών. Κάθε εγγραφή περιέχει δεδομένα σχετικά με έναν πελάτη και το πεδίο "Διεύθυνση" περιέχει τη διεύθυνση για τον πελάτη.

Όταν έχετε καθορίσει το αρχικό σύνολο στηλών για κάθε πίνακα, μπορείτε να περιορίσετε τις στήλες. Για παράδειγμα, έχει νόημα να αποθηκεύσετε το όνομα του πελάτη ως δύο ξεχωριστές στήλες: όνομα και επώνυμο, ώστε να μπορείτε να ταξινομήσετε, αναζήτηση και ευρετήριο σε μόνο αυτές τις στήλες. Ομοίως, η διεύθυνση στην πραγματικότητα αποτελείται από πέντε μεμονωμένα στοιχεία, διεύθυνση, πόλη, νομό, Ταχυδρομικός κώδικας και χώρας/περιοχής και επίσης έχει νόημα να αποθηκεύσετε σε ξεχωριστές στήλες. Εάν θέλετε να εκτελέσετε μια αναζήτηση, λειτουργίας φίλτρου ή ταξινόμησης κατά νομό, για παράδειγμα, πρέπει οι πληροφορίες κατάστασης που είναι αποθηκευμένα σε μια ξεχωριστή στήλη.

Λάβετε υπόψη επίσης αν η βάση δεδομένων θα περιέχει πληροφορίες που δεν είναι δική σας χώρα μόνο ή διεθνείς, καθώς και. Για παράδειγμα, εάν σκοπεύετε να αποθηκεύσετε διεθνείς διευθύνσεις, είναι καλύτερα να έχετε μια στήλη "περιοχή" αντί για το νομό, επειδή μια τέτοια στήλη εξυπηρετεί εσωτερικές καταστάσεις και τις περιοχές των άλλων χωρών/περιοχών. Ομοίως, Ταχυδρομικός κώδικας κάνει πιο λογικό από Ταχυδρομικός κώδικας, εάν πρόκειται να αποθηκεύσετε διεθνείς διευθύνσεις.

Η παρακάτω λίστα παρουσιάζει μερικές συμβουλές για τον προσδιορισμό των στηλών.

  • Μην περιλαμβάνετε υπολογισμού δεδομένων   

    Στις περισσότερες περιπτώσεις, δεν μπορείτε να αποθηκεύσετε το αποτέλεσμα υπολογισμών σε πίνακες. Αντί για αυτό, μπορείτε να έχετε πρόσβαση εκτελέσετε υπολογισμούς, όταν θέλετε να δείτε το αποτέλεσμα. Για παράδειγμα, ας υποθέσουμε ότι υπάρχει μια αναφορά προϊόντων στη σειρά που εμφανίζει το μερικό άθροισμα των μονάδων στη σειρά για κάθε κατηγορία προϊόντος στη βάση δεδομένων. Ωστόσο, υπάρχει καμία στήλη μερικού αθροίσματος μονάδες στη σειρά από οποιονδήποτε πίνακα. Αντί για αυτό, τον πίνακα Products περιλαμβάνει μια στήλη μονάδες στη σειρά που αποθηκεύει τις μονάδες κατά παραγγελία για κάθε προϊόν. Χρήση αυτών των δεδομένων, η Access υπολογίζει το μερικό άθροισμα κάθε φορά που θα εκτυπώσετε την αναφορά. Το ίδιο το μερικό άθροισμα δεν πρέπει να είναι αποθηκευμένα σε έναν πίνακα.

  • Αποθήκευση πληροφοριών σε μικρότερα λογικά μέρη   

    Ίσως έχετε την τάση να έχετε ένα πεδίο για ονοματεπώνυμα ή για ονόματα προϊόντων μαζί με περιγραφές προϊόντων. Εάν συνδυάσετε περισσότερα από ένα είδος των πληροφοριών σε ένα πεδίο, είναι δύσκολο να ανακτήσετε αργότερα μεμονωμένα δεδομένα. Δοκιμάστε να διασπάστε τις πληροφορίες σε λογικά μέρη. Για παράδειγμα, δημιουργήστε ξεχωριστά πεδία για όνομα και επώνυμο ή για όνομα προϊόντος, κατηγορία και περιγραφή.

Εικόνα που εμφανίζει στοιχεία πληροφοριών κατά τη διαδικασία σχεδίασης

Όταν έχετε βελτιώσει τις στήλες δεδομένων σε κάθε πίνακα, είστε έτοιμοι για να επιλέξετε το πρωτεύον κλειδί κάθε πίνακα.

Αρχή της σελίδας

Καθορισμός πρωτεύοντα κλειδιά

Κάθε πίνακας θα πρέπει να περιλαμβάνει μια στήλη ή σύνολο στηλών που προσδιορίζει με μοναδικό τρόπο κάθε γραμμή που είναι αποθηκευμένη στον πίνακα. Αυτό είναι συχνά ένα μοναδικό αναγνωριστικό αριθμό, όπως τον αριθμό ενός υπαλλήλου ή έναν σειριακό αριθμό. Στην ορολογία βάσης δεδομένων, αυτές οι πληροφορίες ονομάζεται το πρωτεύον κλειδί του πίνακα. Η Access χρησιμοποιεί πεδία πρωτεύοντος κλειδιού για να συσχετίσετε δεδομένα από πολλούς πίνακες γρήγορα και να συνδυάζουν τα δεδομένα για εσάς.

Εάν έχετε ήδη ένα μοναδικό αναγνωριστικό για έναν πίνακα, όπως έναν αριθμό προϊόντος που προσδιορίζει μοναδικά κάθε προϊόν στον κατάλογό σας, μπορείτε να χρησιμοποιήσετε αυτό το αναγνωριστικό ως πρωτεύον κλειδί του πίνακα — αλλά μόνο αν οι τιμές σε αυτήν τη στήλη θα είναι πάντοτε διαφορετικές για κάθε εγγραφή. Δεν μπορείτε να έχετε διπλότυπες τιμές σε ένα πρωτεύον κλειδί. Μην χρησιμοποιείτε για παράδειγμα, τα ονόματα των ατόμων ως πρωτεύον κλειδί, επειδή δεν είναι μοναδικά. Μπορείτε εύκολα να έχετε δύο άτομα με το ίδιο όνομα στον ίδιο πίνακα.

Ένα πρωτεύον κλειδί πρέπει πάντα να έχει μια τιμή. Εάν η τιμή μιας στήλης μπορεί να γίνει δεν έχουν αντιστοιχιστεί άγνωστη (μια τιμή που λείπει) ή σε κάποιο σημείο, δεν μπορεί να χρησιμοποιηθεί ως ένα στοιχείο σε ένα πρωτεύον κλειδί.

Πρέπει να επιλέγετε πάντα ένα πρωτεύον κλειδί που η τιμή δεν θα αλλάξει. Σε μια βάση δεδομένων που χρησιμοποιεί περισσότερους από έναν πίνακα, το πρωτεύον κλειδί ενός πίνακα μπορεί να χρησιμοποιηθεί ως αναφορά σε άλλους πίνακες. Εάν το πρωτεύον κλειδί αλλάζει, η αλλαγή πρέπει να εφαρμοστεί επίσης παντού αναφέρεται το κλειδί. Χρήση ενός πρωτεύοντος κλειδιού που δεν θα αλλάξει μειώνει την πιθανότητα ότι το πρωτεύον κλειδί ενδέχεται να μην είναι συγχρονισμένο με άλλους πίνακες που αναφέρονται σε αυτό.

Συχνά, ένας αυθαίρετος μοναδικός αριθμός χρησιμοποιείται ως πρωτεύον κλειδί. Για παράδειγμα, που μπορεί να αντιστοιχίσετε σε κάθε παραγγελία έναν μοναδικό αριθμό παραγγελίας. Ο αριθμός παραγγελίας μόνο σκοπός είναι να αναγνωρίσετε μια σειρά. Μόλις στους οποίους έχουν ανατεθεί, ποτέ αλλάζει.

Εάν δεν έχετε υπόψη σας μια στήλη ή ένα σύνολο των στηλών που ίσως είναι ένα καλό πρωτεύον κλειδί, μπορείτε να χρησιμοποιήσετε μια στήλη που περιέχει τον τύπο δεδομένων "Αυτόματη αρίθμηση". Όταν χρησιμοποιείτε τον τύπο δεδομένων "Αυτόματη αρίθμηση", η Access αντιστοιχίζει αυτόματα μια τιμή για εσάς. Ένα τέτοιο αναγνωριστικό δεν περιέχει δεδομένα. περιέχει πραγματικές πληροφορίες που περιγράφουν τη γραμμή που αναπαριστά. Μη πραγματικά αναγνωριστικά είναι ιδανική για χρήση ως πρωτεύον κλειδί, επειδή δεν αλλάζουν. Ένα πρωτεύον κλειδί που περιέχει πληροφορίες σχετικά με μια γραμμή — έναν αριθμό τηλεφώνου ή ένα όνομα πελάτη, για παράδειγμα — είναι πιο πιθανό να αλλάξει, επειδή η ίδια η πληροφορία δεδομένων ενδέχεται να αλλάξει.

Εικόνα που αναπαριστά τον πίνακα Προϊόντα με πεδίο πρωτεύοντος κλειδιού

1. μια στήλη που ορίζεται στον τύπο δεδομένων "Αυτόματη αρίθμηση" συχνά κάνει ένα καλό πρωτεύον κλειδί. Δεν υπάρχει δύο αναγνωριστικά προϊόντων είναι ίδιες.

Σε ορισμένες περιπτώσεις, ίσως θέλετε να χρησιμοποιήσετε δύο ή περισσότερα πεδία τα οποία, μαζί, παρέχουν το πρωτεύον κλειδί ενός πίνακα. Για παράδειγμα, ενός πίνακα στοιχεία παραγγελιών που αποθηκεύει στοιχεία γραμμής για παραγγελίες θα χρησιμοποιήσετε δύο στήλες σε το πρωτεύον κλειδί: Αναγνωριστικό παραγγελίας και αναγνωριστικό προϊόντος. Όταν ένα πρωτεύον κλειδί χρησιμοποιεί περισσότερες από μία στήλες, ονομάζεται επίσης σύνθετο κλειδί.

Για τη βάση δεδομένων πωλήσεων προϊόντων, μπορείτε να δημιουργήσετε μια στήλη "Αυτόματη αρίθμηση" για κάθε έναν από τους πίνακες που θα χρησιμοποιηθεί ως πρωτεύον κλειδί: ProductID για τον πίνακα προϊόντα, κωδικός παραγγελίας για τις παραγγελίες και του πίνακα, CustomerID για πίνακα "πελάτες", "Κωδ Προμηθευτή" για τον πίνακα προμηθευτές.

Εικόνα που εμφανίζει στοιχεία πληροφοριών κατά τη διαδικασία σχεδίασης


Αρχή της σελίδας

Δημιουργία σχέσεων πινάκων

Τώρα που έχετε χωρίσει τις πληροφορίες σας σε πίνακες, χρειάζεστε έναν τρόπο για να συγκεντρώσετε ξανά τις πληροφορίες στο χαρακτηριστικό τρόπους. Για παράδειγμα, η ακόλουθη φόρμα περιλαμβάνει πληροφορίες από πολλούς πίνακες.

Η φόρμα Παραγγελίες

1. Οι πληροφορίες σε αυτή τη φόρμα προέρχονται από τον πίνακα "Πελάτες"...

2... πίνακας υπάλληλοι .the...

3... πίνακα orders .the...

4... πίνακα προϊόντα .the...

5... και κάντε πίνακα "Λεπτομέρειες παραγγελίας".

Η πρόσβαση είναι ένα σύστημα διαχείρισης σχεσιακή βάση δεδομένων. Σε μια σχεσιακή βάση δεδομένων, μπορείτε να διαιρέσετε τις πληροφορίες σε πίνακες ξεχωριστά, με βάση το θέμα. Στη συνέχεια, μπορείτε να χρησιμοποιήσετε τις σχέσεις πινάκων για να συγκεντρώσετε τις πληροφορίες ανάλογα με τις ανάγκες.

Αρχή της σελίδας

Τη δημιουργία μιας σχέσης ένα-προς-πολλά

Εξετάστε το ενδεχόμενο να αυτό το παράδειγμα: οι πίνακες προμηθευτών και προϊόντων του προϊόντος παραγγελιών βάσης δεδομένων. Ένας προμηθευτής μπορεί να σας δώσει οποιονδήποτε αριθμό προϊόντων. Αυτό σημαίνει ότι για οποιονδήποτε προμηθευτή που αντιπροσωπεύονται από τον πίνακα προμηθευτών, ενδέχεται να υπάρχουν πολλά προϊόντα που απεικονίζονται στον πίνακα "προϊόντα". Η σχέση μεταξύ του πίνακα "Προμηθευτές" και "προϊόντα" είναι, επομένως, μια σχέση ένα-προς-πολλά.

Η έννοια ένα-προς-πολλά

Για να απεικονίσετε μια σχέση ένα-προς-πολλά στη σχεδίαση της βάσης δεδομένων, πάρετε το πρωτεύον κλειδί από την πλευρά "ένα" της σχέσης και προσθέστε το ως πρόσθετη στήλη ή στήλες στον πίνακα στην πλευρά "πολλά" της σχέσης. Σε αυτήν την περίπτωση, για παράδειγμα, προσθέτετε τη στήλη Αναγνωριστικό προμηθευτή από τον πίνακα προμηθευτών στον πίνακα προϊόντα. Πρόσβαση, στη συνέχεια, να χρησιμοποιήσετε τον αριθμό Αναγνωριστικού προμηθευτή στον πίνακα "προϊόντα" για να εντοπίσετε το σωστό προμηθευτή για κάθε προϊόν.

Η στήλη Αναγνωριστικό προμηθευτή στον πίνακα "προϊόντα" ονομάζεται ξένο κλειδί. Ένα ξένο κλειδί είναι πρωτεύον κλειδί ενός άλλου πίνακα. Η στήλη Αναγνωριστικό προμηθευτή στον πίνακα "προϊόντα" είναι ένα ξένο κλειδί, επειδή είναι επίσης το πρωτεύον κλειδί στον πίνακα "Προμηθευτές".

Εικόνα που εμφανίζει στοιχεία πληροφοριών κατά τη διαδικασία σχεδίασης

Μπορείτε να παράσχετε βάση για τη συμμετοχή σε σχετικούς πίνακες, δημιουργώντας ζεύγη πρωτεύοντα και ξένα κλειδιά. Εάν δεν είστε βέβαιοι για τους πίνακες που θα πρέπει να έχουν μια κοινή στήλη, προσδιορίζοντας μια σχέση ένα-προς-πολλά εξασφαλίζει ότι τους δύο πίνακες που εμπλέκονται στην πραγματικότητα, θα, απαιτεί μια κοινή στήλη.

Αρχή της σελίδας

Δημιουργώντας μια σχέση πολλά-προς-πολλά

Σκεφτείτε τη σχέση μεταξύ του πίνακα "προϊόντα" και του πίνακα "Παραγγελίες".

Μία παραγγελία μπορεί να περιλαμβάνει περισσότερες από μία προϊόντος. Από την άλλη πλευρά, ένα προϊόν μπορεί να εμφανίζεται σε πολλές παραγγελίες. Γι ' αυτό, για κάθε εγγραφή στον πίνακα "Παραγγελίες", μπορεί να υπάρχουν πολλές εγγραφές στον πίνακα "προϊόντα". Και για κάθε εγγραφή στον πίνακα "προϊόντα", μπορεί να υπάρχουν πολλές εγγραφές στον πίνακα "Παραγγελίες". Αυτός ο τύπος της σχέσης ονομάζεται μια σχέση πολλά-προς-πολλά επειδή για κάθε προϊόν, ενδέχεται να υπάρχουν πολλές παραγγελίες; και για κάθε παραγγελία, μπορεί να υπάρχουν πολλά προϊόντα. Σημειώστε ότι για να ανιχνεύσει τις σχέσεις πολλά-προς-πολλά μεταξύ των πινάκων σας, είναι σημαντικό να λάβετε υπόψη δύο πλευρές της σχέσης.

Τα θέματα από τους δύο πίνακες — παραγγελίες και προϊόντα — έχουν μια σχέση πολλά-προς-πολλά. Αυτό παρουσιάζει πρόβλημα. Για να κατανοήσετε το πρόβλημα, φανταστείτε τι θα συμβεί εάν προσπαθήσατε να δημιουργήσετε τη σχέση μεταξύ των δύο πινάκων προσθέτοντας το πεδίο "Αναγνωριστικό προϊόντος" στον πίνακα Orders. Για να έχετε περισσότερες από μία προϊόντος ανά παραγγελία, χρειάζεστε περισσότερες από μία εγγραφές στον πίνακα Παραγγελίες ανά παραγγελία. Θα επαναλαμβανόμενα στοιχεία παραγγελιών για κάθε γραμμή που σχετίζεται με μια μεμονωμένη σειρά — που προκύπτει μια μη αποτελεσματική σχεδίαση που μπορεί να οδηγήσει σε ακριβή δεδομένα. Να αντιμετωπίσετε το ίδιο πρόβλημα εάν τοποθετήσετε το πεδίο "Αναγνωριστικό παραγγελίας" στον πίνακα "προϊόντα" — θα έχετε περισσότερες από μία εγγραφές στον πίνακα "προϊόντα" για κάθε προϊόν. Πώς μπορείτε να επιλύσετε αυτό το πρόβλημα;

Η απάντηση είναι να δημιουργήσετε έναν τρίτο πίνακα, συχνά ονομάζεται πίνακας σύνδεσης, ο οποίος αλλαγές προς τα κάτω τη σχέση πολλά-προς-πολλά σε δύο σχέσεις ένα-προς-πολλά. Μπορείτε να εισαγάγετε το πρωτεύον κλειδί από κάθε έναν από τους δύο πίνακες στον τρίτο πίνακα. Ως αποτέλεσμα, ο τρίτος πίνακας καταγράφει κάθε εμφάνισης ή παρουσία της σχέσης.

Σχέση πολλά-προς-πολλά

Κάθε εγγραφή στον πίνακα στοιχεία παραγγελιών αντιπροσωπεύει ένα στοιχείο γραμμής σε μια σειρά. Του πίνακα στοιχεία παραγγελιών πρωτεύον κλειδί αποτελείται από δύο πεδία — τα ξένα κλειδιά από τις εντολές και τους πίνακες προϊόντα. Χρήση του πεδίου Αναγνωριστικό παραγγελίας από μόνο του δεν λειτουργεί ως πρωτεύον κλειδί για αυτόν τον πίνακα, επειδή μία παραγγελία μπορεί να έχει πολλά στοιχεία γραμμής. Το Αναγνωριστικό παραγγελίας επαναλαμβάνεται για κάθε στοιχείο γραμμής σε μια σειρά, ώστε το πεδίο δεν περιέχει μοναδικές τιμές. Χρήση του πεδίου Αναγνωριστικό προϊόντος από μόνο του δεν λειτουργεί, επειδή ένα προϊόν μπορεί να εμφανίζεται σε πολλές διαφορετικές παραγγελίες. Αλλά μαζί, τα δύο πεδία πάντα παράγουν μια μοναδική τιμή για κάθε εγγραφή.

Στο τη βάση δεδομένων πωλήσεων προϊόντων, στον πίνακα Orders και τον πίνακα Products δεν σχετίζονται μεταξύ τους απευθείας. Αντί για αυτό, σχετίζονται έμμεσα μέσω του πίνακα "Λεπτομέρειες παραγγελίας". Τη σχέση πολλά-προς-πολλά μεταξύ παραγγελίες και προϊόντα αντιπροσωπεύεται στη βάση δεδομένων με χρήση δύο σχέσεις ένα-προς-πολλά:

  • Του πίνακα "Παραγγελίες" και "Λεπτομέρειες παραγγελίας" έχουν μια σχέση ένα-προς-πολλά. Κάθε παραγγελία μπορεί να έχει περισσότερα από ένα στοιχείο γραμμής, αλλά κάθε στοιχείο γραμμής είναι συνδεδεμένο σε μία μόνο σειρά.

  • Το πίνακα "προϊόντα" και "Λεπτομέρειες παραγγελίας" έχουν μια σχέση ένα-προς-πολλά. Κάθε προϊόν μπορεί να έχει πολλά στοιχεία γραμμής που σχετίζονται με αυτό, αλλά κάθε στοιχείο γραμμής αναφέρεται σε ένα μόνο προϊόν.

Από τον πίνακα στοιχεία παραγγελιών, μπορείτε να προσδιορίσετε όλα τα προϊόντα σε μια συγκεκριμένη σειρά. Μπορείτε επίσης να προσδιορίσετε όλες τις παραγγελίες για ένα συγκεκριμένο προϊόν.

Μετά την ενσωμάτωση στον πίνακα στοιχεία παραγγελιών, τη λίστα των πινάκων και πεδίων μπορεί να μοιάζει κάπως έτσι:

Εικόνα που εμφανίζει στοιχεία πληροφοριών κατά τη διαδικασία σχεδίασης


Αρχή της σελίδας

Δημιουργία μιας σχέσης ένα-προς-ένα

Ένας άλλος τύπος σχέσης είναι η σχέση. Για παράδειγμα, ας υποθέσουμε ότι θέλετε να καταγράψετε ορισμένες ειδικές συμπληρωματικές πληροφορίες προϊόντος που θα χρειαστείτε σπάνια ή που ισχύει μόνο για λίγα προϊόντα. Επειδή δεν χρειάζεστε συχνά αυτές τις πληροφορίες και επειδή η αποθήκευση των πληροφοριών στον πίνακα "προϊόντα" θα έχει ως αποτέλεσμα κενό χώρο για κάθε προϊόν για το οποίο δεν ισχύει, μπορείτε να την τοποθετήσετε σε έναν νέο πίνακα. Με τον πίνακα προϊόντα, μπορείτε να χρησιμοποιήσετε το ProductID ως πρωτεύον κλειδί. Η σχέση μεταξύ αυτού του συμπληρωματικού πίνακα και του πίνακα προϊόντος είναι μια σχέση. Για κάθε εγγραφή στον πίνακα προϊόν, υπάρχει μία μόνο εγγραφή που ταιριάζει στον συμπληρωματικό πίνακα. Κατά τον προσδιορισμό όπως μια σχέση, και οι δύο πίνακες πρέπει να έχουν ένα κοινό πεδίο.

Όταν μπορείτε να εντοπίσετε την ανάγκη για μια σχέση στη βάση δεδομένων σας, εξετάστε εάν μπορείτε να τοποθετήσετε τις πληροφορίες από τους δύο πίνακες μαζί σε έναν πίνακα. Εάν δεν θέλετε να το κάνετε για κάποιο λόγο, ίσως επειδή αυτό θα έχει ως αποτέλεσμα σε πολλά κενό χώρο, η παρακάτω λίστα παρουσιάζει τον τρόπο που θα αντιπροσωπεύει τη σχέση στη σχεδίαση σας:

  • Εάν οι δύο πίνακες έχουν το ίδιο θέμα, πιθανώς να ορίσετε τη σχέση, χρησιμοποιώντας το ίδιο πρωτεύον κλειδί και στους δύο πίνακες.

  • Εάν οι δύο πίνακες έχουν διαφορετικά θέματα με διαφορετικά πρωτεύοντα κλειδιά, επιλέξτε έναν από τους πίνακες (είτε ένα) και εισαγάγετε το πρωτεύον κλειδί στον άλλο πίνακα ως ξένο κλειδί.

Καθορισμός των σχέσεων μεταξύ πινάκων σάς βοηθά να βεβαιωθείτε ότι έχετε το σωστό πίνακες και στήλες. Όταν υπάρχει μια σχέση ένα προς ένα "ή" ένα-προς-πολλά, τους πίνακες που εμπλέκονται πρέπει να κάνετε κοινή χρήση μια κοινή στήλη ή στήλες. Όταν υπάρχει μια σχέση πολλά-προς-πολλά, ένα τρίτο πίνακα είναι απαραίτητη για να αναπαραστήσετε τη σχέση.

Αρχή της σελίδας

Βελτίωση της σχεδίασης

Μόλις το πινάκων, πεδίων και σχέσεις που χρειάζεστε, πρέπει να δημιουργήσετε και συμπληρώσετε τους πίνακες με δείγμα δεδομένων και δοκιμάστε να εργαστείτε με τις πληροφορίες: δημιουργία ερωτήματα, να προσθέσετε νέες εγγραφές, και ούτω καθεξής. Με αυτόν τον τρόπο επισήμανση πιθανά προβλήματα — για παράδειγμα, ίσως χρειαστεί να προσθέσετε μια στήλη που ξεχάσατε να την εισαγάγετε κατά τη φάση της σχεδίασης, ή μπορεί να έχετε έναν πίνακα που θα πρέπει να διαιρεθεί σε δύο πίνακες για να καταργήσετε αναπαραγωγής.

Δείτε εάν μπορείτε να χρησιμοποιήσετε τη βάση δεδομένων για να λάβετε τις απαντήσεις που θέλετε. Δημιουργήστε προσχέδια τις φόρμες και αναφορές και δείτε αν εμφανίζονται τα αναμενόμενα δεδομένα. Αναζητήστε περιττά διπλότυπα δεδομένα και, όταν εντοπίσετε κάποια, αλλάξτε τη σχεδίαση για να αποφύγετε την.

Καθώς δοκιμάζετε την αρχική σας βάση δεδομένων, ίσως διαπιστώσετε χώρο για βελτίωση. Εδώ θα βρείτε μερικά πράγματα που μπορείτε να ελέγξετε για:

  • Ξεχάσατε στήλες; Εάν Ναι, ανήκουν οι πληροφορίες στον υπάρχοντα πίνακα; Εάν πρόκειται για πληροφορίες σχετικά με κάτι άλλο, ίσως χρειαστεί να δημιουργήσετε έναν άλλο πίνακα. Δημιουργήστε μια στήλη για κάθε στοιχείο πληροφορίες που χρειάζεστε για να παρακολουθείτε. Εάν οι πληροφορίες δεν είναι δυνατό να υπολογιστεί από άλλες στήλες, είναι πιθανό ότι θα χρειαστείτε μια νέα στήλη για αυτήν.

  • Είναι οι στήλες δεν είναι απαραίτητες επειδή μπορούν να υπολογιστούν από υπάρχοντα πεδία; Εάν ένα στοιχείο πληροφορίες μπορεί να υπολογιστεί από άλλες υπάρχουσες στήλες — ενός προεξοφλημένου τιμή που υπολογίζεται από την τιμή λιανικής πώλησης, για παράδειγμα — συνήθως είναι καλύτερα να κάνετε ακριβώς αυτό και να αποφύγετε τη δημιουργία νέας στήλης.

  • Επανειλημμένα εισαγωγής διπλότυπες πληροφορίες σε έναν από τους πίνακές σας; Εάν Ναι, ίσως πρέπει να χωρίσετε τον πίνακα σε δύο πίνακες που έχουν μια σχέση ένα-προς-πολλά.

  • Έχετε πίνακες με πολλά πεδία, περιορισμένο αριθμό εγγραφών και πολλά κενά πεδία σε μεμονωμένες εγγραφές; Εάν Ναι, σκεφτείτε ξανασχεδιάεσετε τον πίνακα, ώστε να έχει λιγότερα πεδία και περισσότερες εγγραφές.

  • Έχει διαιρεθεί κάθε στοιχείο πληροφορίες στα μικρότερα χρήσιμα μέρη; Αν πρέπει να αναφέρετε, ταξινόμηση, αναζήτηση ή υπολογισμό σε ένα στοιχείο πληροφοριών, τοποθετήστε αυτό το στοιχείο στη δική του στήλη.

  • Περιέχει κάθε στήλη ένα δεδομένο σχετικά με το θέμα του πίνακα; Εάν μια στήλη δεν περιέχει πληροφορίες σχετικά με το θέμα του πίνακα, ανήκει σε διαφορετικό πίνακα.

  • Είναι όλες οι σχέσεις μεταξύ πινάκων που αντιπροσωπεύονται, είτε με κοινά πεδία είτε με έναν τρίτο πίνακα; Οι σχέσεις-προς-ένα και ένα-προς-πολλά απαιτούν κοινές στήλες. Οι σχέσεις πολλά-προς-πολλά απαιτούν έναν τρίτο πίνακα.

Βελτίωση του πίνακα "προϊόντα"

Ας υποθέσουμε ότι κάθε προϊόν στη βάση δεδομένων πωλήσεων προϊόντων ανήκει σε μια γενική κατηγορία, όπως αναψυκτικών, καρυκεύματα ή ψάρια. Στον πίνακα προϊόντα μπορεί να περιλαμβάνει ένα πεδίο που εμφανίζει την κατηγορία κάθε προϊόν.

Ας υποθέσουμε ότι μετά την εξέταση και τη βελτίωση της σχεδίασης της βάσης δεδομένων, μπορείτε να αποφασίσετε να αποθηκεύσετε μια περιγραφή της κατηγορίας μαζί με το όνομά της. Εάν προσθέσετε ένα πεδίο Περιγραφή κατηγορίας στον πίνακα προϊόντα, πρέπει να επαναλάβετε περιγραφή κάθε κατηγορία για κάθε προϊόν που ανήκει στην κατηγορία — αυτή δεν είναι μια καλή λύση.

Μια καλύτερη λύση είναι να κάνετε κατηγορίες ένα νέο θέμα για τη βάση δεδομένων για την παρακολούθηση, με το δικό του πίνακα και το δικό του πρωτεύοντος κλειδιού. Μπορείτε, στη συνέχεια, να προσθέσετε το πρωτεύον κλειδί από τον πίνακα κατηγορίες του πίνακα "προϊόντα" ως ξένο κλειδί.

Οι πίνακες κατηγορίες και προϊόντα έχουν μια σχέση ένα-προς-πολλά: μια κατηγορία μπορούν να περιλαμβάνουν περισσότερα από ένα προϊόντα, αλλά ένα προϊόν μπορούν να ανήκουν σε μία μόνο κατηγορία.

Όταν εξετάζετε τη δομή των πινάκων, να αναζητήσετε επαναλαμβανόμενες ομάδες. Για παράδειγμα, εξετάστε το ενδεχόμενο να ένας πίνακας που περιέχει τις ακόλουθες στήλες:

  • Κωδικός προϊόντος

  • Όνομα

  • Προϊόντος1

  • Όνομα1

  • Προϊόντος2

  • Όνομα2

  • Προϊόντος3

  • Name3

Εδώ, κάθε προϊόν είναι μια επαναλαμβανόμενη ομάδα στηλών που διαφέρει από τις άλλες μόνο κατά την προσθήκη ενός αριθμού στο τέλος του ονόματος της στήλης. Όταν δείτε στήλες με αρίθμηση με τον τρόπο αυτό, θα πρέπει να επισκέπτεστε σχεδίαση σας.

Μια σχεδίαση τέτοιου είδους έχει διάφορα ελαττώματα. Κατ ' αρχάς, υποχρεώνει να τοποθετήσετε ένα ανώτερο όριο στον αριθμό των προϊόντων. Μόλις υπερβείτε το όριο, πρέπει να προσθέσετε μια νέα ομάδα στηλών στη δομή του πίνακα, η οποία είναι μια μεγάλη εργασία διαχείρισης.

Ένα άλλο πρόβλημα είναι ότι οι προμηθευτές που έχουν λιγότερα από τον μέγιστο αριθμό προϊόντων θα σπαταλούν χώρο, επειδή οι πρόσθετες στήλες θα είναι κενή. Το πιο σοβαρά ελάττωμα με μια τέτοια σχεδίαση είναι ότι βγάζει πολλές εργασίες δύσκολο για να εκτελέσετε, όπως η ταξινόμηση ή δημιουργίας ευρετηρίου για τον πίνακα με το Αναγνωριστικό προϊόντος ή το όνομα.

Κάθε φορά που εντοπίζετε επαναλαμβανόμενες ομάδες, εξετάστε τη σχεδίαση στενά με παρακολουθείτε διαίρεση του πίνακα στα δύο. Στο παραπάνω παράδειγμα είναι καλύτερα να χρησιμοποιήσετε δύο πίνακες, έναν για προμηθευτές και ένα για τα προϊόντα, συνδεδεμένες με αναγνωριστικό προμηθευτή.

Αρχή της σελίδας

Εφαρμογή των κανόνων κανονικοποίηση

Μπορείτε να εφαρμόσετε τους κανόνες κανονικοποίηση δεδομένων (μερικές φορές ονομάζονται απλώς κανόνες κανονικοποίηση) ως το επόμενο βήμα σας σχεδίασης. Μπορείτε να χρησιμοποιήσετε αυτούς τους κανόνες για να δείτε εάν τους πίνακές σας έχουν δομή σωστά. Η διαδικασία εφαρμογής των κανόνων στη σχεδίαση της βάσης δεδομένων σας ονομάζεται κανονικοποίηση της βάσης δεδομένων ή απλώς κανονικοποίηση.

Κανονικοποίηση είναι ιδιαίτερα χρήσιμη μετά την απεικόνιση όλων των στοιχείων πληροφορίας και την κατάληξη σε προκαταρκτικού σχεδίου. Η ιδέα είναι να σας βοηθήσει να εξασφαλίσετε ότι έχετε χωρίσει τα στοιχεία πληροφορίας στους κατάλληλους πίνακες. Κανονικοποίηση τι δεν μπορείτε να κάνετε είναι να βεβαιωθείτε ότι έχετε όλα τα σωστά δεδομένα στοιχεία να.

Μπορείτε να εφαρμόσετε τους κανόνες διαδοχικά, σε κάθε βήμα ταυτόχρονα εξασφαλίζετε ότι οι που λαμβάνονται σχεδίαση σας σε ένα από τα που είναι γνωστό ως "κανονικές φόρμες". Πέντε κανονικές φόρμες είναι ευρέως αποδεκτές — την πρώτη κανονική φόρμα έως την Πέμπτη κανονική φόρμα. Σε αυτό το άρθρο αναλύει τρεις πρώτες, επειδή είναι αυτές που είναι απαραίτητη για το μεγαλύτερο μέρος των σχεδιάσεων βάσης δεδομένων.

Πρώτη κανονική φόρμα

Πρώτη κανονική φόρμα δηλώνει ότι σε κάθε διασταύρωση γραμμών και στηλών στον πίνακα, υπάρχει μια μοναδική τιμή και ποτέ μια λίστα τιμών. Για παράδειγμα, δεν μπορείτε να έχετε ένα πεδίο που ονομάζεται τιμή με την οποία μπορείτε να τοποθετήσετε περισσότερες από μία τιμή. Εάν πιστεύετε ότι κάθε διασταύρωση γραμμών και στηλών, όπως ένα κελί, κάθε κελί μπορεί να περιέχει μόνο μία τιμή.

Δεύτερη κανονική φόρμα

Δεύτερη κανονική φόρμα προϋποθέτει ότι κάθε στήλη χωρίς κλειδί είναι πλήρως εξαρτώμενα σε ολόκληρο το πρωτεύον κλειδί και όχι απλώς τμήμα του αριθμού-κλειδιού. Εφαρμόζεται αυτός ο κανόνας όταν έχετε ένα πρωτεύον κλειδί που αποτελείται από περισσότερες από μία στήλες. Για παράδειγμα, ας υποθέσουμε ότι έχετε έναν πίνακα που περιέχει τις ακόλουθες στήλες, όπου Αναγνωριστικό παραγγελίας και Αναγνωριστικό προϊόντος φόρμας του πρωτεύοντος κλειδιού:

  • Αναγνωριστικό παραγγελίας (πρωτεύον κλειδί)

  • Αναγνωριστικό προϊόντος (πρωτεύον κλειδί)

  • Όνομα προϊόντος

Αυτός ο σχεδιασμός παραβιάζει δεύτερη κανονική φόρμα, επειδή το όνομα προϊόντος εξαρτάται από το Αναγνωριστικό προϊόντος, αλλά όχι σε Αναγνωριστικό παραγγελίας, ώστε να μην είναι εξαρτάται από ολόκληρο το πρωτεύον κλειδί. Πρέπει να καταργήσετε όνομα προϊόντος από τον πίνακα. Ανήκει σε διαφορετικό πίνακα (προϊόντα).

Τρίτη κανονική φόρμα

Τρίτη κανονική φόρμα απαιτεί που δεν είναι μόνο για κάθε στήλη χωρίς κλειδί να εξαρτώνται από ολόκληρο το πρωτεύον κλειδί, αλλά ότι χωρίς κλειδί στήλες είναι ανεξάρτητες μεταξύ τους.

Ένας άλλος τρόπος αναφέρει ότι αυτό είναι ότι κάθε στήλη χωρίς κλειδί πρέπει να είναι εξαρτημένα από το πρωτεύον κλειδί και τίποτα αλλά το πρωτεύον κλειδί. Για παράδειγμα, ας υποθέσουμε ότι έχετε έναν πίνακα που περιέχει τις ακόλουθες στήλες:

  • ProductID (πρωτεύον κλειδί)

  • Όνομα

  • SRP

  • Έκπτωση

Ας υποθέσουμε ότι έκπτωση εξαρτάται από την προτεινόμενη τιμή λιανικής πώλησης (SRP). Αυτός ο πίνακας παραβιάζει την τρίτη κανονική φόρμα, επειδή μια στήλη χωρίς κλειδί, έκπτωση, εξαρτάται από μια άλλη στήλη χωρίς κλειδί, SRP. Ανεξαρτησία των στηλών σημαίνει ότι θα πρέπει να μπορείτε να αλλάξετε οποιαδήποτε στήλη χωρίς κλειδί χωρίς να επηρεαστούν οποιαδήποτε άλλη στήλη. Εάν αλλάξετε μια τιμή στο πεδίο SRP, την έκπτωση θα αλλάξει ανάλογα, έτσι η παραβίαση αυτόν τον κανόνα. Σε αυτήν την περίπτωση έκπτωση θα πρέπει να μετακινηθούν σε άλλον πίνακα που έχει ρυθμιστεί ΠΛΤ.

Αρχή της σελίδας

Αναπτύξτε τις δεξιότητές σας στο Office
Εξερευνήστε το περιεχόμενο της εκπαίδευσης
Αποκτήστε πρώτοι τις νέες δυνατότητες
Γίνετε μέλος του Office Insider

Σας βοήθησαν αυτές οι πληροφορίες;

Σας ευχαριστούμε για τα σχόλιά σας!

Σας ευχαριστούμε για τα σχόλιά σας! Φαίνεται ότι μπορεί να είναι χρήσιμο να συνδεθείτε με έναν από τους συνεργάτες υποστήριξης του Office.

×