Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

sql select μεταξύ πινάκων άλλων ΒΔ

Îåêßíçóå áðü ôï ìÝëïò DaltonGR. Τελευταία δημοσίευση από το μέλος KelMan στις 27-06-2007, 10:46. Υπάρχουν 5 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  27-06-2007, 09:30 33198

    sql select μεταξύ πινάκων άλλων ΒΔ

    Καλημέρα,

    μπορώ να κάνω sql select με join ανάμεσα σε δύο ή τρείς πίνακες που είναι σε διαφορετικές βάσεις;π.χ

    εχω a.tbl1,b.tbl2,b.tbl a,b ΒΔ στον ίδιο server.

    μπορώ να κάνω

    select * from tbl1

    inner join tbl2 on tbl1.id = tbl2.id

    inner join tbl3 on tbl1.id2 = tbl3.id

    where tbl1.i = 5

  •  27-06-2007, 10:24 33202 σε απάντηση της 33198

    Απ: sql select μεταξύ πινάκων άλλων ΒΔ

    Μπορείς να το κάνεις, αρκεί να έχεις επαρκή δικαιώματα στις άλλες βάσεις και να χρησιμοποιείς την πλήρη ονομασία για τους πίνακες του τύπου DatabaseName.TableName.FieldName, δηλαδή:

    select * from tbl1

    inner join tbl2 on tbl1.id = Database2.tbl2.id

    inner join tbl3 on tbl1.id2 = Database3.tbl3.id

    where tbl1.i = 5


    Vir prudens non contra ventum mingit
  •  27-06-2007, 10:34 33204 σε απάντηση της 33198

    Απ: sql select μεταξύ πινάκων άλλων ΒΔ

    Ναι μπορείς. Απλά πρέπει να συμπεριλαμβάνεις το όνομα της κάθε βάσης και τον owner του αντικειμένου που θέλεις να καλέσεις. π.χ.

    SELECT a.column1, b.column4 FROM  myDB1.dbo.myTableOnDB1 AS a

    JOIN myDB2.dbo.myTableOnDB2 AS b ON a.column2=b.column3

    Επίσης αν ψάξεις λίγο για linked servers στο google, θα δεις ότι μπορείς να καλέσεις και αντικείμενα από άλλους servers, οι οποίοι δεν είναι απαραίτητο να είναι sql server! 


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  27-06-2007, 10:35 33205 σε απάντηση της 33202

    Απ: sql select μεταξύ πινάκων άλλων ΒΔ

    Με πρόλαβες Μάνο!

    Γιατί νομίζω ότι δεν δουλεύει αν δεν βάλεις και τον owner; 


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  27-06-2007, 10:37 33206 σε απάντηση της 33202

    Απ: sql select μεταξύ πινάκων άλλων ΒΔ

    ευχαριστώ δούλεψε μέ μόνο μία αλλαγή.θέλει δύπ τελείες αντι για μία δηλαδή,

    select * from tbl1

    inner join tbl2 on tbl1.id = Database2..tbl2.id

    inner join tbl3 on tbl1.id2 = Database3..tbl3.id

    where tbl1.i = 5

  •  27-06-2007, 10:46 33209 σε απάντηση της 33205

    Απ: sql select μεταξύ πινάκων άλλων ΒΔ

    ΟΥΠΣ!!!

    Ναι, Δημήτρη, δίκιο έχεις. Έφαγα τον owner.

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


    Vir prudens non contra ventum mingit
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems