2017-12-05 3 views
0

Ich arbeite an einer Desktop-Anwendung (WPF), die SQL Server-Datenbank zum Speichern und Abrufen der Daten verwendet. Aufgrund der geänderten Benutzeranforderungen wurden in einigen Tabellen einige zusätzliche Spalten hinzugefügt, und ich habe auch Änderungen in den NHibernate-Mapping-Klassen vorgenommen und die Anwendung ist bereit für eine neue Version.Umgang mit Datenbankänderungen mit älteren Version der Anwendung

Wenn ich jetzt datenbankbezogene Änderungen in der Produktionsumgebung vorstelle, erhalten die Benutzer, die die alte Version der Anwendung verwenden, eine NHibernate-Ausnahme, da die Zuordnungen geändert werden.

Gibt es eine Lösung, um diese Art von Szenarien zu vermeiden? Bitte brauchen Sie Vorschläge.

+1

Abhängig von der Anwendung können Sie möglicherweise eine Testroutine erstellen, um die Kompatibilität zwischen Anwendung und Datenbank bei der Initialisierung zu testen und einen Fehler wie "Diese Version der Anwendung kann keine Verbindung mit dieser DB-Version für den konfigurierten Server/Basis herstellen. Bitte App aktualisieren " – jean

Antwort

0

Sie sollten manuell tun müssen. Ich habe Erfahrung wie dieser Fall.

1.Take Backup für diese Tabelle in Produktionsserver, die alle Tabellen Sie haben Mapping geändert und neue Spalten geändert. 2.Drop diese Tabellen vom Produktionsserver. 3.Move lokale Tabellen Schema (Tabellen, die Sie haben und neue Spalten) in Produktionsserver. 4. Verschieben Sie die Produktionsdaten aus der Sicherungstabelle basierend auf dem Mapping in die Quellentabelle.

Verwandte Themen