1

在 Visual Studio 2012 中使用带有 SSDT 的架构比较工具来更新数据库项目时,对本地数据库上的架构对象所做的更改会导致架构从对象声明中“丢失”。我使用 Windows 帐户连接到我的本地 sql 服务器实例,并且该帐户在被比较的数据库上具有 dbo 的默认架构。

例如,本地存储过程定义可能是:

CREATE PROCEDURE [dbo].[SetPriceBounds]

但是当使用模式比较将其添加到数据库项目中时,它变为:

CREATE PROCEDURE SetPriceBounds

当随后将其部署到另一个 SQL Server 实例时,它会失败并出现以下错误:

The default schema does not exist.

我需要在dbo.执行模式比较时保留前缀,欢迎任何想法。

4

1 回答 1

0

这已通过将部署目标数据库上的默认模式设置为执行部署的用户的 dbo 来解决。我不相信这是解决问题的正确方法,但它确实有效。

于 2013-11-26T08:52:55.393 回答