我正在使用 Visual Studio 2008 数据库项目 GDR2 来管理多个数据库,但遇到许多与同义词相关的错误。
项目 A 引用了项目 B,因为项目 A 与项目 B 中的表有许多同义词。我收到的完整错误是“TSD04105:模型已具有同名 dbo.[OBJECT] 的元素”。这总是指向同义词。
问题似乎是项目 A 上的同义词与项目 B 上的表具有相同的名称。显然,我可以重命名所有同义词,使它们具有与表不同的名称,但这会给我带来大量工作(到目前为止有超过 140 个同义词)。
删除对 Project-B 的引用将消除该错误,但 Project-A 中的所有存储过程都会生成错误,因为它无法再引用 Project-B 中的表。
除了重命名所有同义词之外,有没有办法解决这个问题?在数据库项目中处理这种情况的适当方法是什么?
最佳答案
我在 2008 年服务器项目和数据库项目之间遇到了这个问题,我通过使用文字数据库变量值解决了这个问题。
引用项目属性 -> 引用选项卡 -> 数据库变量值
我想说您也可以使用数据库变量名称/值对。
关于sql-server - 使用 Visual Studio 2008 数据库项目 GDR2 时出现 "Model already has an element"错误 (TSD04105),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3294375/