Umstieg von Dataset mit XML auf Dataset mit SQL

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von dattKlobiche.

    Umstieg von Dataset mit XML auf Dataset mit SQL

    Moin zusammen,

    ich steh grad tierisch auf dem Schlauch und bin mir relativ sicher, dass die Lösung wahrscheinlich einfach ist.

    Ich habe ein Programm mit typisiertem Dataset, gespeichert in einer XML. Das ganze läuft mit den DBExtensions vom EDR. Jetzt müssen allerdings 2 Leute mit dem Programm arbeiten und ich wollte auf SQL umstellen.
    Und ich dachte mir so, ich muss ja im Prinzip einfach nur das gefüllte Dataset nicht als XML speichern, sondern auf den SQL Server. Dort liegt schon die Datenbank mit allen Tabellen. Die Verbindung mit der Datenbank klappt auch super, er speichert nur nix.
    Mein bisheriger Angang war so:

    VB.NET-Quellcode

    1. Dataset1.Datafile(xmldaten).fill
    2. dataset1.adapter(dataadapter mit Connectionstring).save(me, false)

    oder

    VB.NET-Quellcode

    1. Dataset1.Datafile(xmldaten).fill
    2. dim Dataset2 as new Dataset
    3. Dataset2 = Dataset1.copy
    4. dataset1.adapter(dataadapter mit Connectionstring).save(me,false)


    Sobald ich zusätzliche Datensätze eingebe speichert er die auch. Werden Daten also nur gespeichert, wenn sie neu oder geändert sind?

    Vielleicht stelle ich mir das auch nur zu einfach vor. ?(

    dattKlobiche schrieb:

    Werden Daten also nur gespeichert, wenn sie neu oder geändert sind?
    Ja, das ist grundsätzlich einer der Vorteile von Datenbanken-Speicherung gegenüber Datei-Speicherung:
    Bei Benutzung von DataAdaptern wird die ÄnderungsVerfolgung des Datasets ausgenutzt, sodass nur geänderte oder zugefügte Datensätze gespeichert werden, sowie Löschungen.
    Spart enorm Daten-Traffic.
    Um einmalig ein Dataset von Platte zu laden und in eine Db einzuspeichern musste nach dem Laden von Platte sämtliche Datensätze mittels DataRow.SetAdded() auf DataRowState.Added setzen.
    Das geht (untypisiert) in einer verschachtelten Schleife durch alle Tables durch alle DataRows-