2

由于共享数据库,我们没有管理员权限。只有我们有模式 id。在 dacpac build 或 sqlpackage.exe 发布中是否有忽略 Create database 语句?

2020-03-23T21:48:54.5875811Z ##[错误]*** 无法部署包。2020-03-23T21:48:54.5930784Z ##[错误]错误 SQL72014:.Net SqlClient 数据提供者:消息 262,级别 14,状态 1,第 1 行在数据库“主”中拒绝创建数据库权限。错误 SQL72045:脚本执行错误。执行的脚本: CREATE DATABASE [$(Datab 2020-03-23T21:48:54.6200608Z ##[error]aseName)] COLLATE SQL_Latin1_General_CP1_CI_AS

我在 sqlpackage.exe 中尝试了以下选项,但它不起作用

/p:CreateNewDatabase=False /p:ExcludeObjectTypes=Users;Logins;RoleMembership;Permissions;Credentials;DatabaseScopedCredentials

是否可以破解 dacpac sql 脚本注释创建数据库,并且从下一个版本开始它应该能够因为增量负载而跳过?欣赏你的想法。

对于 Azure sql 数据仓库,是否有任何替代 DACPAC 部署的方法?

4

1 回答 1

1

您可以使用 sqlpackage.exe在 dacpac 和目标数据库之间生成更新脚本 ( /a:Script )。然后你可以删除不需要的指令。下面是创建管道的示例:Azure Pipelines - 使用 SqlPackage.exe 生成 DB 脚本

于 2020-03-25T11:39:52.377 回答