Σχέσεις

Γενικές συζητήσεις για SQL και SQL Servers (RDBMS)

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

Απάντηση
rafinos
Δημοσιεύσεις: 306
Εγγραφή: 15 Μάιος 2011 00:20
Επικοινωνία:

Σχέσεις

Δημοσίευση από rafinos » 03 Αύγ 2011 14:09

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

Και επίσης όταν έχουμε τρίτο πίνακα (για τη δημιουργία σχέσης) θα πρέπει να καταχωρούμε και σε αυτόν τις τιμές;;;;

rafinos
Δημοσιεύσεις: 306
Εγγραφή: 15 Μάιος 2011 00:20
Επικοινωνία:

Σχέσεις

Δημοσίευση από rafinos » 04 Αύγ 2011 14:13

Να σας δώσω ένα παράδειγμα μήπως και γίνει πιο κατανοητό...

Για παράδειγμα έχω έναν πίνακα personal_data και έναν άλλον studies. Eμένα μου φαίνεται λογικο στον πίνακα studies να βάλω ένα ξένο κλειδί από τον πίνακα personal_data και όχι να δημιουργησω έναν άλλο όπου θα συνδέονται αυτοί η δύο.

Επίσης έχω έναν πίνακα authors και έναν πίνακα publications όπου αυτοί οι δύο συσχετίζονται μέσω του πίνακα authorspublications γιατί σε μια δημοσίευση μπορούν να υπάρχουν πολλοί συγγραφείς όπως επίσης και οι ίδιοι συγγραφείς μπορούν να έχουν δημοσιεύσει πολλές φορές κάτι.

(Ακόμα δεν έχω αρχίσει τίποτα μόνο με χάρτια ασχολούμαι και έχω τρελαθεί... καταραμένες πτυχιακές!!!!!)

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Σχέσεις

Δημοσίευση από dva_dev » 04 Αύγ 2011 14:32

Οι σχέσεις 1-Ν μπορούν να υλοποιηθούν κατευθείαν με foreign key. Οι σχέσεις Μ-Ν χρειάζονται ενδιάμεσο τρίτο πίνακα (ώστε ουσιαστικά να σπάσει σε 1-Μ, Ν-1 με τον ενδιάμεσο πίνακα να κρατάει τις Μ-Ν αντιστοιχήσεις)

rafinos
Δημοσιεύσεις: 306
Εγγραφή: 15 Μάιος 2011 00:20
Επικοινωνία:

Σχέσεις

Δημοσίευση από rafinos » 04 Αύγ 2011 14:51

Οκ!!! Σε ευχαριστώ πάρα πολύ!

Απάντηση

Επιστροφή στο “Βάσεις Δεδομένων και SQL - γενικά”

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

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