1 Dataset, 2 Tabellen aus 2 Datenbanken von 2 verschiedenen MySQL Servern

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von DianonForce.

    1 Dataset, 2 Tabellen aus 2 Datenbanken von 2 verschiedenen MySQL Servern

    Moin,
    ich hab mal wieder eine kleine Herrausforderung (zumindest für misch)

    Ich muß für ein Datagridview Daten aus 2 Tabellen verbinden, normalerweise wäre es kein Problem, LeftJoin und gut ist, dummer Weise kommen die Tabellen nicht nur aus 2 Datenbanken sondern auch noch au zwei Servern.

    Server 1 -> Datenbak Dispathing -> Tabelle Tickets
    ID
    Primary Key
    Firma

    Datum

    ...



    Server 2 -> Datenbank Warenwirtschaft -> Tabelle Auftragskopf
    auanr
    Primary Key
    auaersatzgernr
    Foreign Key
    ...



    Haben tät ich gerne

    SQL-Abfrage

    1. SELECT ID,Firma,Datum,...,auanr FROM Tickets LEFT JOIN Auftragskopf on Tickets.ID = Auftragskopf.auaersatzgernr


    Ist es möglich die beiden Tabellen in einem Dataset zu haben? Und wenn ja wie? Bekomme ich das auch mit der DBExtension von EDR hin, da die ja soviel 'Magic' im Hintergrund macht?

    DianonForce schrieb:

    Bekomme ich das auch mit der DBExtension von EDR hin
    Glaub nicht - zumindest ists für solche Anforderungen nicht entwickelt.
    DbExtension-Konzept ist: 1 Dataset - 1 Datenbank, und 1 DatasetAdapter - quasi dazwischen.
    Der DatasetAdapter "klebt" sich mittels listiger Extension-Methods ans Dataset, und dann macht die Extension-Magic, dass das Dataset auf einmal eine Methode .Save() hat, die in die Db savet.
    Nicht vorgesehen hab ich, mehrere DatasetAdapter ans Dataset zu kleben, auch weil dann nicht mehr eindeutig ist, was mit .Save dann eiglich gemeint ist - welche Daten denn in welche Db?
    Ok, ich bin bin grade estwas verwirrt.

    Ich dachte genau das geht nicht, das ich ne 'fremde' Tabelle ins Dataset schreibe, zumindest meckert die DBExtension dann, das sie beim füllen die Tabelle nicht findet (kann sie auch ned, ist ja in der anderen DB)
    Momentan schreib ich die 'auanr' direkt in eine Spalte 'AuftragsnummerTkd' der Ticket Tabelle im Dataset. Hatte mich dafür entschieden, weil ich sie zu einem späteren Zeitpunkt eh in der Ticket Tabelle brauche, und ob ich sie gleich hier mit reinschreib oder später in einer anderen Anwendung ist, zumindest mir Wurst.