2 προβληματάκια με mysql

Συζητήσεις για την βάση δεδομένων MySQL και το phpMyAdmin

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
georvl
Δημοσιεύσεις: 4
Εγγραφή: 27 Μάιος 2010 19:15

2 προβληματάκια με mysql

Δημοσίευση από georvl » 03 Ιουν 2010 14:02

Γεια σας,

Θα ήθελα αν μπορούσε κάποιος να μου δώσει κάποια διευκρίνιση ή ιδέα για το πώς μπορώ να υλοποιήσω 2 πράγματα στην mysql.

1) 'Εχω ένα πεδίο που παίρνει 3 τιμές. Όμως για την μια μονο τιμή είναι Υποχρεωτικό (NOT NULL), ενώ για τις άλλες 2 όχι

2) Σε ένα πίνακα 2 απο τα πεδία του αλληλεπιδρούν. Πχ το ένα παίρνει τιμές "καρέκλα" και "τραπέζι". Το άλλο που είναι ΙΝΤ, όταν το πρώτο πεδίο είναι "καρέκλα" , αυτό είναι αύξων αριθμός, ενώ όταν το πρώτο πεδίο αλλάζει σε "τραπέζι"παίρνει την τιμή 0 (μηδέν).

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

Το εργαλείο που χρησιμοποιώ είναι το workbench.

Σας ευχαριστώ εκ των προτέρων

Άβαταρ μέλους
cherouvim
Script Master
Δημοσιεύσεις: 3137
Εγγραφή: 13 Ιούλ 2005 22:56
Τοποθεσία: Athens, Greece
Επικοινωνία:

2 προβληματάκια με mysql

Δημοσίευση από cherouvim » 03 Ιουν 2010 15:37

Το πρόβλημα σου δεν είναι στη MySQL αλλά στο modeling της πληροφορίας.
Δώσε παράδειγμα για το [1].

Για το [2] θα κάνεις αυτή τη δουλειά από το business layer της εφαρμογής σου (φτιάχνεις εφαρμογή, έτσι; Ή θέλεις να τα κάνεις όλα αυτά μόνο μέσα από το workbench;)

georvl
Δημοσιεύσεις: 4
Εγγραφή: 27 Μάιος 2010 19:15

2 προβληματάκια με mysql

Δημοσίευση από georvl » 03 Ιουν 2010 16:32

Καταρχήν ευχαριστώ για την απάντηση

Το 2 το απάντησα. Εκανα ένα trigger και δουλεψε.

Στο 1 ερώτημα μου:

Έχω ένα πίνακα 7 πεδία. Ενα απο τα πεδία παίρνει 3 τιμές. ΦΠ(φυσικό πρόσωπο) ΝΠΔΔ και ΝΠΙΔ. Σε ένα άλλο πεδίο (το "επίθετο προσώπου") είναι υποχρεωτικό πεδίο ΜΟΝΟ αν το προηγούμενο είναι ΦΠ. Στις αλλες 2 περιπτώσεις (ΝΠΔΔ και ΝΠΙΔ) το πεδίο "επίθετο προσώπου" δεν είναι υποχρεωτικό.

Πώς μπορώ να κάνω αυτού του είδους τη συσχέτηση? Με trigger πάλι? με κάποιο handler?

ευχαριστώ

Άβαταρ μέλους
cherouvim
Script Master
Δημοσιεύσεις: 3137
Εγγραφή: 13 Ιούλ 2005 22:56
Τοποθεσία: Athens, Greece
Επικοινωνία:

2 προβληματάκια με mysql

Δημοσίευση από cherouvim » 03 Ιουν 2010 17:10

Με trigger σίγουρα μπορείς.

Δεν είπες όμως, έχεις backend εφαρμογή ή ασχολείσαι μόνο πάνω στην MySQL;

georvl
Δημοσιεύσεις: 4
Εγγραφή: 27 Μάιος 2010 19:15

2 προβληματάκια με mysql

Δημοσίευση από georvl » 03 Ιουν 2010 17:45

μονο πανω στην mysql. thanks

Άβαταρ μέλους
cherouvim
Script Master
Δημοσιεύσεις: 3137
Εγγραφή: 13 Ιούλ 2005 22:56
Τοποθεσία: Athens, Greece
Επικοινωνία:

2 προβληματάκια με mysql

Δημοσίευση από cherouvim » 03 Ιουν 2010 18:21

Σε αυτή τη περίπτωση, ναι, το λύνεις μόνο με triggers και stored procedures. Η λογική της "εφαρμογής" σου είναι μέσα στην ίδια τη βάση.

Απάντηση

Επιστροφή στο “MySQL”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες