首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Dacpac未通过代码正确升级

Dacpac未通过代码正确升级
EN

Stack Overflow用户
提问于 2016-03-04 02:56:05
回答 1查看 92关注 0票数 0

我们有一个中央数据库,需要升级我们的本地数据库。我们正在使用dacpac来做这件事。基本上,我们对服务器上的数据库进行更改。然后我们创建一个dacpac。它会被放入部署包中。当客户端运行应用程序时,它会检查是否有新版本。如果有,它将进行升级。问题是我们有。如果在未升级dacpac的情况下进行本地数据库更改,则会导致警告,指出已进行了除dacpac之外的其他更改。因此,当它升级dacpac (通过vb.net代码完成)时,它完成了这个过程,但实际上并没有做任何更改。基本上跳过所有的东西

我的代码如下

If _package.Version <> databaseVersion Then

代码语言:javascript
复制
            dacOptions.ScriptDatabaseOptions = True
            dacOptions.BlockOnPossibleDataLoss = False
            dacOptions.IgnoreIncrement = False
            dacOptions.BlockWhenDriftDetected = False
            dacOptions.RegisterDataTierApplication = True
            dacOptions.IncludeTransactionalScripts = True



            _service.Deploy(_package, localDB, True, dacOptions)

        End If

我注意到如果我手动进入SSMS并尝试升级。它提示我数据库已被更改,并在可能的数据丢失的情况下单击继续。如果我这样做,它将手动工作。但是从代码上看,即使我有blockonpossibledataloss=false,它似乎仍然不能升级

我能做些什么来解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2016-03-04 06:08:32

我建议将RegisterDataTierApplication设置为false,除非您打算使用漂移检测功能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35780638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档