2010-04-02 64 views
13

我刚开始使用Visual Studio 2010 Premium数据库项目。我必须说它确实很摇滚。有一件事我无法弄清楚是如何避免SQL04151警告VS 2010构建数据库项目接收SQL04151

程序:[DBO] [MyProc的]有一个未解决的 参考对象 [MyDatabase的] [DBO] [MyItem]。

我是否错过了某个简单的步骤?我能在网上找到的所有内容都涉及tempdb。

+0

如果[MyDatabase]与[dbo]。[MyProc]所在的数据库相同,删除[MyDatabase]可能更有优势。 (或[$(DatabaseName)]。)前缀。如果在同一台服务器上安装多个实例来进行说明,测试或开发环境,则不会得到预期的结果,甚至可能不会意识到这一点,因为参考可能会被破坏或在引用错误实例时工作。 – 2013-01-02 15:34:17

回答

3

在您的[dbo].[MyProc]过程中,您引用了[MyDatabase].[dbo].[MyItem],这可能不是您的数据库项目的一部分。即使该对象存在于数据库中,但在编译过程中它并不知道Visual Studio,因此会产生错误。

通常,您应该在DB项目中拥有整个DB架构。否则,我认为有些东西叫做“部分数据库项目”,你可以看看。

+0

其实所有对象都是数据库项目的一部分。存储过程位于MyDatabase中。我在创建项目时接受了默认设置,但我希望我错过了一些东西。 – beezler 2010-04-05 13:55:57

14

我需要用[$(DatabaseName)]。[dbo]。[MyTable]替换[MyDatabase]。[dbo]。[MyTable]。这清除了警告。

感谢您的帮助。

+7

将此项目标记为正确答案会将其移至页面顶部,这将使其他人稍后可以更轻松地找到答案。 – Pedro 2010-07-20 15:09:45

+0

经历了完全相同的问题,这解决了它,谢谢。 – 2012-04-18 08:43:27

0

确保您已设置生成操作建立在指定的对象属性窗格 ..

相关问题