我在 Visual Studio 中使用数据库项目。
在我的场景中,我的客户直观地自定义了我为他们提供的数据库。
例如,客户与第三方签约为其创建定制系统,然后该第三方在我的数据库中创建一些表。
我知道我永远不应该允许第三方访问我的数据库,但我工作的公司允许这样做。
在部署 .dacpac 时,如何使不属于我的模式的这些对象不被排除?我认为这可能是不可能的,在这种情况下我能做什么?
最佳答案
这是可能的,而且通常非常有用。您的目标中可能有您不想丢弃的对象。我们总是使用单独的放置脚本以受控方式(不是自动)将我们的对象放置在我们的生产数据库中。
有一个 msbuild 参数不会删除在目标中找到但在源中找不到的对象。 只需将参数“Drop objects in target but not in Project”设置为 false。此设置将使这些对象保持不变。从 VS 中发布时,该选项也存在。
DropObjectsNotInSource=FALSE
关于sql-server - SSDT 如何在不丢失自定义客户端数据库对象的情况下使用 : Deploy . dacpac?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28344010/