Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια! |
| Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
#1
| |||
| |||
Σχεδίαση βάσης...
Καλησπέρα! Είμαι εντελώς αρχάρια στην access και θα ήθελα να φτιάξω την εξής βάση. α) Πίνακα με γενικές κατηγορίες ΦΑΓΗΤΟ, ΔΙΑΣΚΕΔΑΣΗ, ΧΟΜΠΥ β) Στην κατηγορία ΦΑΓΗΤΟ, υποκατηγορίες: Εστιατόρια, Ταβέρνες, Ψητοπωλεία στην κατηγορία ΔΙΑΣΚΕΔΑΣΗ: Καφέ, Μπαρ, Night Clubs, Cinema στην κατηγορίς ΧΟΜΠΥ: Φωτογραφία, Ζωγραφική, Γλυπτική, Cinema γ) Πίνακας πελατών με τα πεδία: Επωνυμία, Διεύθυνση, Τηλέφωνο, Κατηγορία Το θέμα μου είναι το εξής... Μια Υποκατηγορία μπορεί να ανήκει σε περισσότερες από μία Κατηγορία (βλέπε Cinema), και περισσότερες από μία Κατηγορίες να αντιστοιχούν σε έναν πελάτη. Μήπως μπορείτε να με βοηθήσετε για τη σχεδίαση των πινάκων και των σχέσεων? Ευχαριστώ πολύ εκ των προτέρων! |
#2
| |||
| |||
Καλησπέρα Δάφνη, καλωσόρισες στο φόρουμ. Στη ΒΔ, που επισυνάπτω, υπάρχει μια υλοποίηση του ζητούμενου. Εκτός από τους βασικούς πίνακες: «ΠΕΛΑΤΕΣ», «ΚΑΤΗΓΟΡΙΕΣ» και «ΥΠΟΚΑΤΗΓΟΡΙΕΣ», περιλαμβάνει και τους ενδιάμεσους «ΠΕΛΑΤΕΣ_ΚΑΤΗΓΟΡΙΕΣ» και «ΚΑΤΗΓΟΡΙΕΣ_ΥΠΟΚΑΤΗΓΟΡΙΕΣ , που είναι απαραίτητοι για τη μετατροπή των σχέσεων πολλά προς πολλά σε ένα προς πολλά. Επειδή η σχέση του πίνακα «ΠΕΛΑΤΕΣ» με τον πίνακα «ΚΑΤΗΓΟΡΙΕΣ» είναι πολλά προς πολλά δεν είναι καλή ιδέα να περιέχει πεδίο «Κατηγορία». Για τη διευκόλυνση της καταχώρησης χρησιμοποιήθηκαν πεδία αναζήτησης (πτυσσόμενα πλαίσια). Πιστεύω η μελέτη του άρθρου Βασικές αρχές σχεδίασης βάσης δεδομένων - Access - Office.com θα σε βοηθούσε στη σωστή σχεδίαση ΒΔ της access. Φιλικά/Γιώργος Τελευταία επεξεργασία από το χρήστη kapetang : 24-01-12 στις 17:32. |
#3
| |||
| |||
Συνέχεια από το προηγούμενο που κόπηκε που είναι απαραίτητοι για τη μετατροπή της σχέσης πολλά προς πολλά σε ένα προς πολλά. Επειδή η σχέση είναι πολλά προς πολλά δεν είναι καλή ιδέα να υπάρχει στον πίνακα «ΠΕΛΑΤΕΣ» πεδίο «Κατηγορία». Για τη διευκόλυνση των καταχωρήσεων χρησιμοποιήθηκαν πεδία αναζήτησης (πτυσσόμενα πλαίσια). Πιστεύω η μελέτη του άρθρου Βασικές αρχές σχεδίασης βάσης δεδομένων - Access - Office.comθα σε βοηθούσε στη σχεδίαση ΒΔ της access. Φιλικά/Γιώργος |
#4
| ||||
| ||||
Καλησπέρα Δάφνη καλωσόρισες και από μένα. Περιέγραψέ μας τι θες να φτιάξεις. Περιγραφή που θα έκανες σε κάποιο πρόσωπο που δεν έχει ιδέα απο προγραμματισμό, βάσεις δεδομένων,... Με εκτίμηση Νίκος Δ. Υστερολόγιο: Γιώργη, ακόμη στον ...κάμπο είσαι; |
#5
| |||
| |||
Σας ευχαριστώ πολύ και τους δύο για την άμεση ανταπόκριση... Προσπάθησα να δουλέψω λίγο στην βάση του Γιώργου αλλά τα ψιλομπέρδεψα...:) Για να γίνω λίγο πιο συγκεκριμένη Νίκο, θέλω να φτιάξω μια βάση στην οποία θα γίνεται καταχώρηση των στοιχείων πελάτων. Όνομα, επώνυμο, Διεύθυνση, Τηλέφωνο κλπ... Οι πελάτες ανήκουν σε διάφορες κατηγορίες επαγγελμάτων. Λογιστές, Δικηγόροι, Γιατροί, Ραφεία, Καταστήματα επίπλων, καταστήματα ηλεκτρικών κλπ. Αυτές οι κατηγορίες θέλω να ανήκουν σε κάποιες γενικές κατηγορίες. πχ. ΕΛΕΥΘΕΡΟΙ ΕΠΑΓΓΕΛΜΑΤΙΕΣ: Λογιστές, Δικηγόροι κλπ, ΚΑΤΑΣΤΗΜΑΤΑ: Καταστήματα Επίπλων, Καταστήματα Ηλεκτρικών, Ραφεία κλπ. Καταχωρώντας τα στοιχεία των πελατών θέλω να δηλώνω και την κατηγορία πελάτη (η οποία κατηγορία πελάτη ανήκει σε μια γενική κατηγορία). Αυτό που θέλω είναι να μπορώ με ένα ερώτημα να παίρνω αποτελέσματα για τους πελάτες που ανήκουν πχ στην γενική κατηγορία ΕΛΕΥΘΕΡΟΙ ΕΠΑΓΓΕΛΜΑΤΙΕΣ. Η πελάτες που ανήκουν στην κατηγορία Λογιστές, κλπ. |
#6
| ||||
| ||||
Καλησπέρα Δες μια πρόταση... Εστίασε την προσοχή σου στη δόμηση του πίνακα με τον οποίο "γεμίζονται" δυο combobox, όπου το δεύτερο (υποκατηγορία) συναρτά τα δεδομένα του από την τιμή του πρώτου (κατηγορία). Προχώρησε την εργασία σου και κάποια στιγμή θα δούμε και τις αναζητήσεις... Με εκτίμηση Νίκος Δ. |
#7
| |||
| |||
Καλησπέρα Δάφνη στο προηγούμενο μήνυμά σου γράφεις: Παράθεση:
Δεν κατάλαβα επίσης γιατί από την αρχή δε μας παρουσίασες το συγκεκριμένο πρόβλημα που αντιμετώπιζες. Στη ΒΔ που επισυνάπτω έχω προσθέσει το ερώτημα «ΠΕΛΑΤΕΣ_ΚΑΤΗΓΟΡΙΕΣ_QRY». Αν το ανοίξουμε (διπλό κλικ) και δώσουμε τον αριθμό κατηγορίας θα πάρουμε τους πελάτες που ανήκουν σ’ αυτήν. Φιλικά/Γιώργος |
#8
| |||
| |||
Καλησπέρα Δάφνη, επειδή είδα στο τελευταίο μήνυμά σου ότι θέλεις να βρίσκεις τους πελάτες που ανήκουν σε μία κατηγορία αλλά και σε μία υποκατηγορία, έκανα κάποιες τροποποιήσεις στην προηγούμενη ΒΔ. Αντικατέστησα τον πίνακα «ΠΕΛΑΤΕΣ_ΚΑΤΗΓΟΡΙΕΣ» με τον «ΠΕΛΑΤΕΣ_ΥΠΟΚΑΤΗΓΟΡΙΕΣ». Στον τελευταίο καταχωρείται για κάθε πελάτη η υποκατηγορία στην οποία ανήκει. Επειδή γνωρίζουμε κάθε υποκατηγορία σε ποιες κατηγορίες ανήκει μπορούμε να βρούμε και ποιοι πελάτες ανήκουν σε μία κατηγορία. Αν ανοίξουμε τις σχέσεις των πινάκων θα δούμε πως τελικά διαμορφώθηκαν. Τα ερωτήματα «ΠΕΛΑΤΕΣ_ΥΠΟΚΑΤΗΓΟΡΙΕΣ_QRY» και «ΠΕΛΑΤΕΣ_ΚΑΤΗΓΟΡΙΕΣ_QRY» μας δίνουν τους πελάτες ανά υποκατηγορία και κατηγορία αντίστοιχα. Πιστεύω ότι θα μπορέσεις να προσαρμόσεις το παράδειγμα στις πραγματικές σου ανάγκες. Φιλικά/Γιώργος ΥΓ. Νίκο είμαι ακόμα στον κάμπο και το internet που έχω είναι προβληματικό. Τώρα που προσπαθώ να ανεβάσω το μήνυμα είδα και την απάντησή σου |
#9
| |||
| |||
Καλησπέρα Α. ΕΙΣΑΓΩΓΗ Στις σχεσιακές βάσεις δεδομένων (access, SQL setver, κλπ) οι σχέσεις των πινάκων μπορεί να είναι ένα προς πολλά, ένα προς ένα και πολλά προς πολλά. Αν έχουμε ένα πίνακα «ΚΑΘΗΓΗΤΕΣ» με τους καθηγητές (πρωτεύον κλειδί ID_Καθηγητή) και έναν «ΜΑΘΗΤΕΣ» με τους μαθητές (πρωτεύον κλειδί ID_Μαθητή), επειδή κάθε καθηγητής έχει πολλούς μαθητές και κάθε μαθητής πολλούς καθηγητές, η σχέση τους είναι πολλά προς πολλά. Η σχέση πολλά προς πολλά παρουσιάζει δυσκολίες και για να γίνει διαχερίσιμη θα πρέπει να μετατραπεί σε δύο σχέσεις ένα προς πολλά με τη βοήθεια ενός ενδιάμεσου πίνακα «ΚΑΘΗΓΗΤΕΣ_ΜΑΘΗΤΕΣ». Ο πίνακας «ΚΑΘΗΓΗΤΕΣ_ΜΑΘΗΤΕΣ» θα πρέπει να περιέχει τα εξωτερικά κλειδιά «ID_Καθηγητή» και «ID_Μαθητή» τα οποία συνήθως ορίζονται και σύνθετο πρωτεύον κλειδί. Στον πίνακα «ΚΑΘΗΓΗΤΕΣ_ΜΑΘΗΤΕΣ» καταχωρούμε για κάθε κωδικό καθηγητή τους κωδικούς των μαθητών του. Δηλαδή αν ο καθηγητής με κωδικό 123 έχει 50 μαθητές θα καταχωρήσουμε 50 γραμμές με ίδιο κωδικό καθηγητή (123) και διαφορετικό κωδικό μαθητή. Το ίδιο θα γίνει για όλους τους καθηγητές. Συνδέοντας τον πίνακα «ΚΑΘΗΓΗΤΕΣ» με τον «ΚΑΘΗΓΗΤΕΣ_ΜΑΘΗΤΕΣ» στα πεδία τους «ID_Καθηγητή» και τον ««ΜΑΘΗΤΕΣ» με τον «ΚΑΘΗΓΗΤΕΣ_ΜΑΘΗΤΕΣ» στα πεδία τους «ID_Μαθητή» λαμβάνουμε δύο σχέσεις 1 προς πολλά που είναι και το ζητούμενο. Β. ΣΧΕΔΙΑΣΗ ΤΗΣ ΒΔ Η ΒΔ, που επισυνάπτω, δείχνει πως μπορούμε να χειριστούμε σχέσεις πολλά προς πολλά, γι’ αυτό έγινε και η σχετική εισαγωγή. Με τη ΒΔ θέλουμε να διαχειριστούμε τα ενδιαφέροντα μιας ομάδας ατόμων (πελατών). Τα ενδιαφέροντα κατατάσσονται σε κατηγορίες (ΦΑΓΗΤΟ, ΔΙΑΣΚΕΔΑΣΗ, ΧΟΜΠΥ, κλπ) και κάθε κατηγορία περιλαμβάνει υποκατηγορίες, όπως:
Για την αποθήκευση των δεδομένων δημιουργήθηκαν οι βασικοί πίνακες: «ΠΕΛΑΤΕΣ», «ΚΑΤΗΓΟΡΙΕΣ» και «ΥΠΟΚΑΤΗΓΟΡΙΕΣ». Επίσης, επειδή οι σχέσεις των πινάκων «ΚΑΤΗΓΟΡΙΕΣ», «ΥΠΟΚΑΤΗΓΟΡΙΕΣ» και «ΠΕΛΑΤΕΣ», «ΥΠΟΚΑΤΗΓΟΡΙΕΣ» είναι πολλά προς πολλά δημιουργήθηκαν και οι ενδιάμεσοι πίνακες «ΚΑΤΗΓΟΡΙΕΣ_ΥΠΟΚΑΤΗΓΟΡΙΕΣ και «ΠΕΛΑΤΕΣ_ΥΠΟΚΑΤΗΓΟΡΙΕΣ». Αν ανοίξουμε τις σχέσεις των πινάκων θα δούμε πως τελικά διαμορφώθηκαν. Για τη διευκόλυνση των καταχωρήσεων χρησιμοποιήθηκαν πεδία αναζήτησης (πτυσσόμενα πλαίσια). ΧΡΗΣΗ ΤΗΣ ΒΔ 1. Με τη βοήθεια της φόρμας «ΥΠΟΚΑΤΗΓΟΡΙΕΣ» πρώτα καταχωρούμε τα στοιχεία των υποκατηγοριών. 2. Με τη βοήθεια της σύνθετης φόρμας «ΚΑΤΗΓΟΡΙΕΣ» καταχωρούμε τις κατηγορίες και για κάθε κατηγορία στη δευτερεύουσα φόρμα δημιουργούμε τις αναγκαίες εγγραφές για την καταχώρηση των υποκατηγοριών που τις ανήκουν. Οι υποκατηγορίες επιλέγονται από το σύνθετο πλαίσιο και αν δεν υπάρχουν πατούμε το κουμπί «Υποκατηγορίες» για να ανοίξει η φόρμα «ΥΠΟΚΑΤΗΓΟΡΙΕΣ» και να τις δημιουργήσουμε. 3. Αφού τελειώσουμε με τις υποκατηγορίες και τις κατηγορίες, με τη βοήθεια της φόρμας «ΠΕΛΑΤΕΣ» καταχωρούμε τους πελάτες. Για κάθε πελάτη που καταχωρούμε, στη δευτερεύουσα φόρμα καταχωρούμε τα ενδιαφέροντά του (υποκατηγορίες). Οι υποκατηγορίες επιλέγονται από το σύνθετο πλαίσιο και αν δεν υπάρχουν πατούμε το κουμπί «Κατηγορίες/Υποκατηγορίες» για να ανοίξει η φόρμα «ΚΑΤΗΓΟΡΙΕΣ» και να τις δημιουργήσουμε. ΠΡΟΣΟΧΗ: Δεν πρέπει να υπάρχουν ορφανές υποκατηγορίες. Κάθε υποκατηγορία που δημιουργούμε θα πρέπει να την εντάσσουμε, με τη βοήθεια της φόρμας «ΚΑΤΗΓΟΡΙΕΣ», σε μία ή περισσότερες κατηγορίες. Φιλικά/Γιώργος ΥΓ Δάφνη, ελπίζω βλέποντας την πιο ολοκληρωμένη εφαρμογή και τις παραπάνω οδηγίες να περιοριστούν τα μπερδέματα. |
#10
| |||
| |||
Χίλια ευχαριστώ και στους δύο για το χρόνο που αφιερώσατε για να με βοηθήσετε!!!!! Γιώργο η τελική βάση είναι αυτό που θα ήθελα. Για να πάρω τα αποτελέσματα που θέλω θα πρέπει να φτιάξω ερώτημα? |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
Παρόμοια Θέματα | ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
[ Ερωτήματα ] Σχεδίαση βάσης δεδομένων | Πανος_ | Access - Ερωτήσεις / Απαντήσεις | 0 | 29-02-16 20:19 |
[ Πίνακες ] Σχεδίαση για πρωτόκολλο σε ενορία... | Morpheas | Access - Ερωτήσεις / Απαντήσεις | 10 | 22-08-14 20:26 |
Σχεδίαση: Μαθητές-Δοκιμασίες | Χρήστος | Access - Ερωτήσεις / Απαντήσεις | 6 | 02-02-14 23:59 |
Σχεδίαση με VBA | Dimitris Ch | Access - Ερωτήσεις / Απαντήσεις | 6 | 18-05-11 16:35 |
[ Ερωτήματα ] Σχεδίαση - σύνδεση πινάκων σε Β.Δ. | Xristos | Access - Ερωτήσεις / Απαντήσεις | 2 | 15-05-11 13:50 |
Η ώρα είναι 07:24.