Microsoft Visual Studio SQL数据库项目中未解析的引用

Mat*_*att 13 sql-server database-project gdr visual-studio

我在Visual Studio中有一个MS DataBase项目 - 在进行模式比较后,我正在尝试生成一个部署脚本,问题是我得到了数百个未解决的引用错误,例如以下两个:

Error   385 TSD03006: View: [auditing].[AuditedEntities] has an unresolved reference to object [INFORMATION_SCHEMA].[REFERENTIAL_CONSTRAINTS].  D:\greatProject\Database\greatProject.Database\Schema Objects\Schemas\auditing\Views\AuditedEntities.view.sql   4   14  greatProject.Database
Error   387 TSD03006: View: [auditing].[AuditedEntities] contains an unresolved reference to an object. Either the object does not exist or the reference is ambiguous because it could refer to any of the following objects: [INFORMATION_SCHEMA].[REFERENTIAL_CONSTRAINTS].[C]::[CONSTRAINT_NAME], [INFORMATION_SCHEMA].[REFERENTIAL_CONSTRAINTS].[CONSTRAINT_NAME] or [INFORMATION_SCHEMA].[TABLE_CONSTRAINTS].[C]::[CONSTRAINT_NAME].  D:\greatProject\Database\greatProject.Database\Schema Objects\Schemas\auditing\Views\AuditedEntities.view.sql   5   69  greatProject.Database
Run Code Online (Sandbox Code Playgroud)

SPROCS在运行时从不会出现问题.是否有一种快速而肮脏的方法来解决这个问题?也许甚至可能通过关闭参照完整性检查?

sta*_*ica 25

您的数据库项目缺少对master数据库的引用.

假设您正在讨论SQL Server数据工具(SSDT)数据库项目,您可以添加缺少的引用,如下所示:

  1. Solution Explorer中,打开References节点上的上下文菜单,然后从中选择Add Database Reference ...:

    通过Solution Explorer添加数据库引用

  2. 在打开对话框窗口的上半部分,选择" 系统数据库"选项,然后master从下拉列表中进行选择.

    选择系统数据库<code> master </ code>

  3. 最后,按OK按钮.现在应该将数据库引用添加到项目中.


Muh*_*agy 13

我添加了对master数据库的引用来解决此错误,这可以通过以下步骤来实现.

  1. 右键单击数据库项目下的引用
  2. 点击 Add Database Reference...
  3. 单击"数据库项目架构(.dbschema)"单选按钮
  4. 浏览到

    C:\ Program Files\Microsoft Visual Studio 9.0\VSTSDB\Extensions\SqlServer\2008\DBSchemas\master.dbschema

  5. 单击确定

以下问题是相关的.ASP.NET模式表导致VSTS中的问题

  • 这个答案对我的环境不起作用(VS 2013); 描述的路径不存在.stakx的答案对我有用. (2认同)