p_thimios Δημοσ. 26 Αυγούστου 2007 Δημοσ. 26 Αυγούστου 2007 Καλησπέρα! Αυτό είναι το πρώτο μου post και συνοδεύεται από μια απορία που έχω στην SQL. Χρησιμοποίησα SQL Express και έχω φτιάξει τους παρακάτω πίνακες: Πίνακας Group (Group_id, Count_memebers, Enabled) Πίνακας Members (Memberi_id, Group_id) Τα πεδία Group_id, Count, Member_id είναι τύπου int. Το πεδίο Enabled είναι boolean. Στον πίνακα Members το Group_id αποτελεί ξένο κλειδί από τον πίνακα Group_id. Αυτό που θέλω να υλοποιήσω είναι το εξής: 1) Το πεδίο Count_members να κρατάει τον αριθμό των εγγραφών από τον πίνακα Members που έχουν το ίδιο Group_id. 2) To πεδίο Enabled να παίρνει την τιμή true αν Count_members > 5 αλλιώς false. Μήπως γνωρίζει κάνείς κάποιον τρόπο για να υλοποιηθούν τα παραπάνω;
Bspus Δημοσ. 26 Αυγούστου 2007 Δημοσ. 26 Αυγούστου 2007 Αυτα που θες θα τα κανεις με views πανω στους πινακες. Οχι στους ιδιους τους πινακες. Οποτε τα count kai enabled δεν μπαινουν στον πινακα group Αν το γκρουπ εχει μονο id τοτε δεν χρειαζεται δικο του πινακα, υποθετω ομως οτι εχει τουλαχιστον και ονομα, οπως και τα μελη. Οποτε θες τους παρακατω πινακες: Group: group_id, group_name Member member_id, member_name Subscriptions group_id, member_id με τον τελευταιο πινακα να εχει 2 ξενα κλειδια. Μπορεις να εχεις και δικο του id για πρωτευον κλειδι, η να κανεις τα 2 ξενα να ειναι συνθετο πρωτευων κλειδι, αφου δεν μπορει ενα μελος να ανηκει στο ιδιο γκρουπ 2 φορες Απο κει και περα θα φτιαξεις views για τους υπολογισμους που θες. Δεν ξερω την sql express και τι γραφικα εργαλεια εχει για τη δομηση queries Αν εχεις δυσκολιες να γραψεις select statements πες μας να σου δειξουμε ορισμενα tutorials. Αλλα ψαξε πρωτα στο google και πιστευω οτι θα βρεις απειρα. Αν δε θες να γραφεις, υπαρχει και η access οπου μπορεις πολυ ευκολα να υλοποιησεις το παραπανω
p_thimios Δημοσ. 2 Σεπτεμβρίου 2007 Μέλος Δημοσ. 2 Σεπτεμβρίου 2007 Thanks Bspus!!! Googlαρα λιγάκι και τελικά βρήκα ακριβώς ότι ζητούσα... Τελικά τα views είναι πολύ χρήσιμα. Σε περιπτώσεις τέτοιες που θέλεις να βάλεις κάποιους counters σε απαλάσσουν από εισαγωγές και τροποποιήσεις, καθώς και από τον πιθανό έλεγχο που θα έπρεπε να γίνει στην εφαρμογή και θα έκανε πιο πολύπλοκο τον κώδικα.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.