2012-03-27 13 views
11

Wygląda na to, że SSDT obsługuje tylko tłumienie ostrzeżeń, ale nie błędów. I mają wiele błędów, wszystkie o następującej treści:Problem z pomijaniem błędów w SSDT (SQL Server Data Tools)

błędu 4 SQL71561: Widok:.... [Dbo] [X] nierozwiązanym odniesienie do Zadanie [DB1] [dbo] [Y] [Kolumna]

Nie chcę odwoływać się do DB1 w tym projekcie bazy danych z określonych powodów. Chcę tylko, aby te błędy były pomijane podczas budowania projektu. Jedynym sposobem, w jaki udało mi się uzyskać dostęp do tych błędów, jest przejście do każdego pliku (widok) i ustawienie akcji budowania na Brak. Wyłączanie ostrzeżeń TSql na poziomie projektu lub na poziomie pliku nie działa (zakładam, że to tylko pomija ostrzeżenia). I nie ustawiłem opcji traktowania ostrzeżeń T-SQL jako błędów.

Czy istnieje lepsze podejście?

+2

Any aktualności na ten temat? W tej chwili mam ten sam problem. Ale nie mogę zmienić akcji kompilacji, ponieważ nie będę wdrażać widoku, jeśli go zmienię. – Feroc

+0

Nie mogłem również dowiedzieć się, jak wyłączyć te błędy, więc dodałem odniesienie do innej bazy danych, aby rozwiązać błędy. Szczegółowe informacje można znaleźć na stronie http://stackoverflow.com/questions/12161392. –

Odpowiedz

-4

na polu publikować dialogu baza danych> Zaawansowane> sprawdzić „błędy weryfikacji traktował jako ostrzeżenia”

Publish Database and Advanced Publish Settings

+0

Nie powoduje to usunięcia błędów kompilacji i porównań, które nie będą działały, dopóki nie zostaną rozwiązane błędy kompilacji. –

0

Czy któryś z was próbują ustawić identyfikator komunikatu o błędzie „obsłużyć jako ostrzeżenie”, aw oprócz ustawić ten identyfikator warnung do wyłączenia na ustawieniach poziomu projektu? Nie jestem pewien, czy to działa, ale teoretycznie myślę, że powinien ...

+0

Ten komentarz jest bezużyteczny, spojrzałem na zakładkę Build CLR SQL, przepraszam. – MARKUS

5

Nie znalazłem sposobu, aby uniknąć błędu bez odwoływania się do DB1, ale istnieją dwie opcje, aby przejść o tym, jeśli nie masz kodu w SSDT:

  • Jeśli masz dostęp do live DB1, wypakuj .dacpac z niego za pomocą SqlPackage. Następnie dodaj ten .dacpac jako odniesienie w swoim projekcie.
  • Utwórz projekt stub (na przykład fałszywy DB1) obok siebie, odwołaj go i dodaj do niego obiekty pośrednie.

musiałem użyć opcji 1 z projektem jakiś czas temu, które szczegółowo tutaj:

http://tangodude.wordpress.com/2014/02/05/referencing-the-sql-server-data-collectors-management-data-warehouse-in-your-ssdt-database-project/

można wyodrębnić dacpac za pomocą tego:

 
SqlPackage /Action:Extract /SourceServerName:YourServerNameHere /SourceDatabaseName:YourDatabaseNameHere /TargetFile:YourDatabaseNameHere.dacpac 
Powiązane problemy