【发布时间】:2011-11-30 08:51:05
【问题描述】:
我们有几个同义词用于引用单独数据库(位于同一服务器上)中的表。
实际的同义词很好,但是引用所述同义词的存储过程/用户定义的函数显示以下错误:
Error 13 SQL03006: Column: [dbo].[GetCocosIndexSearched].[User ID] 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: [dbo].[AuditType].[e]::[LOGIN_ID], [dbo].[EMPLOYEES].[e]::[LOGIN_ID], [dbo].[EMPLOYEES].[LOGIN_ID] or [dbo].[SearchCIBirthsRequest].[e]::[LOGIN_ID]. C:\VSTS\Corporate\WARS Audit\MAIN\Source\RBDM.Audit.Database\Schema Objects\Schemas\dbo\Programmability\Functions\GetCocosIndexSearched_1.function.sql 21 5 RBDM.Audit.Database
[dbo].[GetCocosIndexSearched] 是一个函数,[dbo].[EMPLOYEES] 是同义词。
这些在实际数据库本身中都可以正常工作 - 问题仅在于数据库项目。我尝试添加对单独数据库的引用(通过新的数据库项目或数据库项目模式),但随后出现了同义词和引用表的冲突问题:
Error 7 SQL04105: The model already has an element that has the same name dbo.EMPLOYEES. C:\VSTS\Corporate\WARS Audit\MAIN\Source\RBDM.Audit.Database\Schema Objects\Schemas\dbo\Synonyms\EMPLOYEES.synonym.sql 2 1 RBDM.Audit.Database
有什么想法吗?在另一个 stackoverflow 帖子中提到了一种解决方法,它谈到将创建脚本放在 Script.PostDeployment.sql 中 - 对我来说听起来有点太 hacky。
【问题讨论】:
标签: visual-studio-2010 database-project