Der Zweck dieser Aufgabe besteht darin, meine Datenbank, die die Standardwerte für alle Entitäten enthält, in eine neu erstellte Datenbank zu kopieren. Diese Aufgabe wird aufgerufen, wenn das Programm die Datenbank zum ersten Mal erstellt, sodass die neu erstellte Datenbank mit den Werten aus meiner Standardwertdatenbank gefüllt wird.Wie kopiert man eine komplette Datenbank mit Entity Framework?
Das Problem mit nur Kopieren und Einfügen von Datenbank ist, dass meine Standardwertdatenbank über unordentliche Primärschlüssel verfügt. Der Wert des Primärschlüssels jeder Entität ist nicht korrekt.
Was ich will ist, neue Datenbank für das Programm zu erstellen, mit den Werten aus einer anderen Datenbank kopiert, aber mit kontinuierlichen Primärschlüssel für jede Entität (1,2,3,4,5 nicht springen).
Voraussetzung ist, dass die Struktur, Referenzen aus der Default-Wert-Datenbank, fest bleiben müssen. Wenn zum Beispiel die Entität A von 5 auf id = 1 kopiert wurde, wurden auch alle Referenzen auf 1 geändert.
Wie kann ich das erreichen? Gibt es einen schnellen Weg dies zu tun, anstatt jedes Element manuell zu kopieren? Weil es eine ziemlich große Datenbank ist.
Hinweis: Der Standarddatenbankkontext ist identisch mit dem neu erstellten Datenbankkontext.
ich denke nicht gerade nach vorne müssen Sie einige ETL-Tool verwenden id (kontinuierlich zu ändern Primärschlüssel für jede Entität) und dann korrekt zuordnen. –
Wenn Sie eine Kopie für die gesamte Datenbank (nicht bestimmte Tabellen) erhalten möchten, können Sie einfach Datenbankdateien kopieren oder anhängen oder Datenbanken sichern und wiederherstellen (oder ein Dienstprogramm zum Kopieren der Datenbank verwenden). – OlegAxenow