Неразрешенные ссылки на тот же проект базы данных

Я создал проект базы данных SQL Server в Visual Studio 2013 и импортировал DACPAC, взятый из производственной базы данных. Когда я пытался создать проект, я получаю сотни ошибок SQL71501 и SQL71561 (оба из которых являются "неразрешенной ссылкой на объект" ). Исследуя скрипты, проблема заключается в том, что многие представления и хранимые процедуры используют три имени: [database]. [Schema]. [Object].

Похоже, что Visual Studio 2013 выдает эту ошибку всякий раз, когда она встречается с именем из трех частей, которое включает базу данных, представленную проектом базы данных. Например, если проект базы данных представляет базу данных "MyDatabase" и SQL script, в этом проекте есть что-то вроде SELECT t.Column1 FROM MyDatabase.dbo.MyTable t, тогда VS 2013 выдает SQL71501 или SQL71561 при создании проекта.

Есть ли способ подавить нерешенные ссылочные ошибки, которые применимы только к текущей базе данных? Я все еще хочу, чтобы Visual Studio выдавала ошибки для нерешенных ссылок на внешние базы данных.

EDIT, Исправление: Первоначально был указан код ошибки SQL71501. Тем не менее, похоже, Visual Studio выдает ошибки SQL71501 и SQL71561 для нерешенных ссылок на одну и ту же базу данных.

Ответ 1

Ну, на самом деле есть два обхода. Мое личное мнение заключается в том, что в SSDT есть ошибка в отношении имен объектов из трех частей в текущей базе данных.

Ответ 2

В Visual Studio:

1) Откройте "Обозреватель объектов SQL", свяжите свой сервер базы данных, щелкните правой кнопкой мыши по неразрешенной справочной базе данных и "Извлеките ядро ​​уровня"

введите описание изображения здесь

2) Вставьте путь к файлу. Обычно я использую \Documents\SQL Server Management Studio\DAC Packages\и нажимаю OK

3) Ожидание экстракции

4) Щелкните правой кнопкой мыши на своем проекте Ссылки и добавьте ссылку на базу данных

введите описание изображения здесь

5) Затем замените ссылки в ваших функциях, SP,.. с префиксом [$ (YourDB)]