Próbuję użyć porównania schematów SQL w Visual Studio 2013/15 i pojawia się problem polegający na tym, że usunięcie tabel z usunięcia powoduje ich całkowite usunięcie.Dołącz, ale nie usuwaj schematu SQL Porównaj
Problem polega na tym, że tabele, które próbują usunąć, są tabelami tworzonymi przez klienta, więc kiedy zsynchronizujemy naszą wersję z ich bazami danych, prosi o ich usunięcie. Nie chcemy ich usuwać, ale niektóre z ich tabel mają ograniczenia na nasze, więc gdy podejmie próbę CCDR, zawodzi z powodu ograniczeń tabel. Czy istnieje sposób na dodanie tabeli (re-created? Podobnie jak pozostałe?), Bez pisania skryptów dla każdego klienta, aby zrobić to, co SQL Schema Compare robi już tylko dla tych kilku tabel?
Porównanie SQL Red-Gate robi to w jakiś sposób, ale jest ukryte przed nami, więc nie jesteśmy pewni, jak to osiągnąć. Discluding nie usuwa, ale nie powoduje również błędu w skrypcie.
UPDATE:
Opcja „ograniczenia wypadania nie w źródle” nie wydaje się działać poprawnie. Niektóre z nich spadają, ale są też inne, które po prostu nie znoszą ograniczeń. W narzędziu red-gate, kiedy porównaliśmy, znalazłem sposób na pobranie z niego kodu SQL, a ich produkt nie powiedział, że tabela musi być w ogóle aktualizowana, podczas gdy Visual Studio to robi. Wydają się działać niemal identyczne, ale stoliki, które nie są te, które nie powinny być w ogóle aktualizacji (czytaj poniżej)
Aktualizacja 2:
Innym problemem znalazłem to „Ignoruj kolumny sortowania” również nie działa poprawnie, ponieważ tabele, które nie powinny być upuszczane, są informowane, że muszą zostać zaktualizowane, mimo że jest to tylko kolejność zmian kolumn, a nie faktyczne zmiany kolumn lub danych, co sprawia, że czujesz się bardziej jak raport o błędzie niż cokolwiek.
Już odznaczam to pole, problem polega na rzucaniu kluczem, a nie z powodu utraty danych. Dzięki jednak – Dispersia