0

我正在运行 sqlpackage.exe 作为自动部署脚本创建过程的公园,但是我们在数据库中有同义词,这些同义词因环境(开发/测试/实时)而异。问题是数据库项目在 Dev 环境中具有同义词,但是当我运行 sqlpackage 以与 Test 或 Live 进行比较时,同义词是不同的,因此它们被编写脚本删除并重新添加以指向 Dev .

我在http://blogs.msdn.com/b/ssdt/archive/2015/02/23/new-advanced-publish-options-to-specify-object-types-to-exclude-or-not上看到过-drop.aspx显然有一个新参数“ExcludeObjectType”,但是当我尝试使用该参数运行它时,它给了我一个错误“ExcludeObjectType”不是“脚本”操作的有效参数(我有最新版本的sqlpackage.exe)。

关于我可以在这里做什么的任何想法?

4

2 回答 2

3

为 Visual Studio 下载最新的 SSDT 后,我仍然遇到同样的问题。接下来,我下载了 Data-Tier Application Framework(2015 年 5 月)并使用了安装的新 SqlPackage C:\Program Files\Microsoft SQL Server\120\DAC\bin\sqlpackage.exe,错误消失并按预期工作。

于 2015-05-01T10:27:41.633 回答
-1

谢谢你,先生!当我在 VS 中创建部署脚本时,没有检测到任何更改,但是当我尝试使用 sqlpackage 进行部署时出现错误: * 对象 [x] 已经存在于具有不同定义的数据库中,并且不会被更改。添加 ExcludeObjectTypes 开关后,我收到以下错误:* “ExcludeObjectTypes”不是“发布”操作的有效参数。但在下载并安装最新的 Data-Tier App 框架后,一切都按预期工作,没有错误。

于 2015-05-07T14:17:08.670 回答