2012-03-27 8 views
11

Es sieht aus wie SSDT unterstützt nur Warnungen, aber keine Fehler zu unterdrücken. Ich habe viele Fehler, alle besagen:Problem mit der Unterdrückung von Fehlern in SSDT (SQL Server-Datentools)

Fehler 4 SQL71561: Ansicht:.... [Dbo] [x] hat einen ungelösten Bezug auf Objekt [DB1] [dbo] [y] [Spalte]

Ich möchte DB1 in diesem Datenbankprojekt aus bestimmten Gründen nicht verweisen. Ich will nur, dass diese Fehler ignoriert werden, wenn ich das Projekt erstelle. Die einzige Möglichkeit, diese Fehler zu bekommen, besteht darin, zu jeder Datei (Ansicht) zu gehen und die Build-Aktion auf None zu setzen. Das Unterdrücken von TSQL-Warnungen auf Projektebene oder auf Dateiebene funktioniert nicht (ich gehe davon aus, dass dies nur Warnungen unterdrückt). Und ich habe die Option nicht eingestellt, T-SQL-Warnungen als Fehler zu behandeln.

Gibt es einen besseren Ansatz?

+2

Beliebig Neuigkeiten zu diesem Thema? Ich habe das gleiche Problem im Moment. Aber ich kann die Build-Aktion nicht ändern, da die View nicht bereitgestellt wird, wenn ich sie ändere. – Feroc

+0

Ich konnte auch nicht herausfinden, wie diese Fehler unterdrückt werden, also fügte ich einen Verweis auf die andere Datenbank hinzu, um die Fehler zu beheben. Weitere Informationen finden Sie unter http://stackoverflow.com/questions/12161392. –

Antwort

-4

auf dem Datenbank-Dialogfeld> erweiterte veröffentlichen> überprüfen Sie die ‚behandeln Prüfungsfehler als Warnungen‘

Publish Database and Advanced Publish Settings

+0

Dies beseitigt keine Buildfehler und Vergleiche funktionieren erst, wenn Buildfehler behoben sind. –

0

Hat jemand von euch versuchen, die Fehlermeldung-ID auf „als Warnung zu behandeln“ und in Zusätzlich zu dieser Warnungs-ID auf den Projektebene Einstellungen unterdrückt werden? Nicht sicher, ob das funktioniert, aber in der Theorie denke ich, es sollte ...

+0

Dieser Kommentar ist nutzlos, ich schaute auf die SQL CLR Build Tabpage, sorry. – MARKUS

5

Ich habe nicht gefunden, wie Sie den Fehler vermeiden, ohne DB1 referenzieren, aber es gibt zwei Möglichkeiten, darüber zu gehen, wenn Sie den Code nicht haben dafür in SSDT:

  • Wenn Sie Zugriff auf den Live-DB1 haben, extrahieren Sie ein .dacpac mit SqlPackage daraus. Fügen Sie dann dieses .dacpac als Referenz in Ihrem Projekt hinzu.
  • Erstellen Sie ein Stub-Projekt (z. B. eine gefälschte DB1) Seite an Seite mit Ihrer, verweisen Sie darauf und fügen Sie dort die Stub-Objekte hinzu.

Ich hatte vor einer Weile Option 1 mit einem Projekt zu verwenden, die ich hier beschrieben:

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

Sie einen dacpac extrahieren können mit diesem:

 
SqlPackage /Action:Extract /SourceServerName:YourServerNameHere /SourceDatabaseName:YourDatabaseNameHere /TargetFile:YourDatabaseNameHere.dacpac 
Verwandte Themen