Ich arbeite an einer bereits vorhandenen MS SQL Server-Datenbank, die nicht sehr gut entworfen wurde. In den meisten Fällen fehlten Indizes und Primärschlüssel. Es gab KEINE Fremdschlüsseleinschränkungen.SQL Server Schema Syncronization
Ich habe eine lokale Kopie der DB (um nicht auf der Live-Version zu arbeiten), und behoben die meisten Probleme. Ich möchte jetzt meine Änderungen an den Produktionsserver synchronisieren,
aber ...
Da es keine vorherigen Fremdschlüssel-Constraints gab es sind Schlüssel Mismatches in den Tabellen, Tausende von ihnen. Ich habe ein paar Synchronisations-Tools ausprobiert, aber keines von ihnen erlaubt FK-Mismatches zu ignorieren oder aufzulösen. (In SQL Server Management Studio heißt es "Vorhandene Daten bei der Erstellung prüfen oder erneut aktivieren: Nein")
Gibt es eine Möglichkeit, die Diskrepanzen der alten Datenbank automatisch aufzulösen?
davon aus, dass ich geschaffen habe, die FK-Einschränkungen als ich sollte nicht unmöglich sein, inkonsistente Daten automatisch zu löschen. –
SQL Server kann dies nicht für Sie tun. Wahrscheinlich kann ein Drittanbieter-Tool, obwohl ich bezweifle, ob jemand darauf geachtet hat, dies zu implementieren. Persönlich finde ich, dass dies ein recht seltener Anwendungsfall ist, und es ist ziemlich einfach, mit einfachem SQL zu erreichen. Bitte beachten Sie die Bearbeitung meiner Antwort für ein Codebeispiel. – VladV