1

我在一个解决方案中有两个数据库项目,数据库 A 和数据库 B。它们都有像这样指向彼此的查询

Select * FROM [Database A].dbo.Table 

Visual Studio 会给你一个类似 SQL04151 的警告:Procedure xyz contains an unresolved reference to an object……如果你添加一个对数据库 A 的数据库引用,这个警告会在数据库 B 中得到解决。

但是,仍然有来自数据库 A 的警告,抱怨对数据库 B 中某些内容的未解决引用。

如果我尝试从数据库 A 添加对数据库 B 的引用,它不会让我这样做,因为它说“无法添加对库“数据库 B”的引用。将此项目添加为引用会导致循环依赖。

所以我想我的问题是如何解决参考,以便停止显示警告?

4

1 回答 1

0

在 VS2010 DB 项目中,您希望为引用的数据库生成 *.DBSchema 文件。将该 DBSchema 文件添加为项目内的数据库引用。这将避免尝试指向另一个项目并创建循环引用。您可以使用带有“导入”选项的 VSDBCMD.exe 生成 DBSchema 文件,以从数据库创建文件。

您可能希望在构建时注意错误。由于这些循环引用,我们不得不多次构建/部署数据库以进行“新”构建。第一次为 DB A 删除/创建,然后创建 DB B,然后更新 DB A。如果我们不这样做,则不会创建依赖于其他数据库的对象。

于 2013-06-01T14:22:18.720 回答