Programm Update mit Datenbank Änderungen

  • VB.NET

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

    Programm Update mit Datenbank Änderungen

    Hallo zusammen,

    ich bin neu hier und hoffe, das mir jemand bei meinem problem helfen kann.

    Mein Programm nutz eine SQL Sever Compact 4.0 Datenbank. Um nun jedem Anwender immer die neueste Version bereitstellen zu können, soll es eine Update Funktion geben. Für die eigentliche Update Funktion des Programms sehe ich nicht das Problem, da kann man ja auf die vorhandenen Mittel von Visual Studio zurückgreifen. Aber wie realisiere ich den Fall, wenn sich etwas an der Datenbank ändert (neue Tabelle, neue Spalte, etc.)?
    Muss man sich hier ein eignes Update Programm erstellen, dass mittels Code die neuen Tabellen, Spalten, etc. in der Datenbank erstellt?
    Ich könnte auch die Datenbankdatei (Datenbank.sdf) mit der neuen überschreiben lassen, jedoch sind dann ja alle Datensätze verloren. Und dass ist ja nicht der inn der Sache.

    Für Ratschläge oder Denkanstöße schonmal vielen Dank im Voraus...
    Ich würde allgemein das Update nicht über die Visual Studio mittel machen.
    Ich weiß nicht ob sich in VS 2012 irgendetwas daran geändert hat, allerdings ist die Updatefunktion bzw. im Allgemeinen die Veröffentlichen Funktion von VS 2010 m.M.n. unzureichend.

    Ich würde direkt ein eigenes externes Programm empfehlen welches aus deinem Programm gestartet wird und die Daten herunter lädt empfehlen. Dort kannst du dann logischerweiße auch deine Updatebefehle für den SQL-Server ausführen.

    Falls du doch den VS Updater nutzen möchtest, würde ich mal schauen ob man da ggf. irgendwelche Scripts ausführen kann.

    lg.
    lg.

    LucaWelker
    1) Beim Update einfach ein Backup der vorhanden DB machen um bei auftretenden Fehlern keine Datensätze zu verlieren
    2) Dann die DB mit Querys erweitern (neue Spalte o.ä.) je nach dem was das Update bewirken soll.
    3) Sollte dabei ein Fehler auftreten, kann man dem Benutzer die Möglichkeit geben die DB zu überschreiben. Natürlich mit dem Hinweis das alle Datensätze verloren gehen. So kann der User immer noch selbst entscheiden ob er die alte Version behalten will oder nicht.