2012-03-27 8 views
11

Похоже, что SSDT поддерживает только подавление предупреждений, но не ошибок. У меня есть много ошибок, все гласящим:Проблема с подавлением ошибок в SSDT (инструменты данных SQL Server)

Ошибка 4 SQL71561: Вид:.... [DBO] [х] имеет нерешенной ссылка на объекта [DB1] [DBO] [у] [колонка]

Я не хочу ссылаться на DB1 в этом проекте базы данных по определенным причинам. Я просто хочу, чтобы эти ошибки игнорировались при создании проекта. Единственный способ, которым я смог проехать эти ошибки, - это перейти к каждому файлу (представлению) и установить для «Действия сборки» значение «Нет». Подавление предупреждений TSql на уровне проекта или уровне файла не работает (я предполагаю, что это только подавляет предупреждения). И я не задал вариант рассматривать предупреждения T-SQL как ошибки.

Есть ли лучший подход?

+2

Любой новости об этом? На данный момент у меня такая же проблема. Но я не могу изменить действие сборки, потому что он не собирается разворачивать представление, если я его изменю. – Feroc

+0

Я также не мог понять, как подавить эти ошибки, поэтому я добавил ссылку на другую базу данных для устранения ошибок. Подробнее см. Http://stackoverflow.com/questions/12161392. –

ответ

-4

на публикацию диалоговой базы данных поля> Дополнительно> Проверьте «ошибку проверки лечить как предупреждения»

Publish Database and Advanced Publish Settings

+0

Это не устраняет ошибки сборки, и сравнения не будут выполняться до тех пор, пока ошибки сборки не будут устранены. –

0

Кто-нибудь из вас пытается установить сообщение об ошибке идентификатора в «обрабатывать как предупреждение» и в Кроме того, чтобы установить это предупреждение, чтобы быть подавленным на уровне проекта? Не уверен, что это работает, но в теории я думаю, что это должно ...

+0

Этот комментарий бесполезен, я посмотрел на SQL CLR Build Tabpage, извините. – MARKUS

5

Я не нашел, как избежать ошибки без ссылки на DB1, но есть два варианта, чтобы обойти это, если у вас нет кода для него в SSDT:

  • Если у вас есть доступ к живому DB1, извлеките из него .dacpac, используя SqlPackage. Затем добавьте этот .dacpac в качестве ссылки в свой проект.
  • Создайте проект заглушки (например, поддельный DB1) бок о бок с вашим, укажите его и добавьте туда объекты-заглушки.

мне пришлось использовать вариант 1 с проектом некоторое время назад, что я подробно здесь:

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

Вы можете извлечь в dacpac с помощью этого:

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

 Смежные вопросы

  • Нет связанных вопросов^_^