Chr*_*ris 5 dacpac azure-data-studio
我可以使用 SQL DB 项目扩展在 Azure 数据工作室中成功构建我的数据库项目。(不是使用SSDT,而是类似于: https: //www.sqlshack.com/two-ways-to-build-sql-database-projects-in-azure-data-studio/ 当我右键单击数据库项目时并选择“从数据库更新项目”,它列出了在线 Azure SQL DB 和本地数据库项目之间的增量。
现在的问题是,当我单击“生成脚本”或“应用”时,我收到错误。
Generate script: Performing script generation is not possible for this comparison result.
Performing script generation is not possible for this comparison result.
Apply schema compare changes: Object reference not set to an instance of an object.
Object reference not set to an instance of an object.
Run Code Online (Sandbox Code Playgroud)
我已经重新安装了 Azure Data Studio,但没有成功。有什么提示我可以做些什么来解决这个问题吗?
小智 2
在我们的例子中,出现这些错误是因为它被添加到标准 MSSQL 数据库角色中,称为db_datareader和db_datawriter。这些角色(或 ADS 所称的对象)在本地 dacpac 或 ADS 数据库项目中不存在。即使检查角色是否更新,它似乎也会映射,因此架构比较无法在本地找到对象。
如果这同样适用于您的项目,我建议检查该用户是否确实需要成为这两个角色的一部分,因为它们没有在本地映射。如果您需要角色中的成员,解决方法是在架构比较中排除数据库角色对象:
Options。Include Object Types-tabDatabase Roles并取消勾选。我已经向 ADS 团队提出了一个问题,因此希望架构比较和数据库项目负责人能够针对这个问题提出一个好的解决方案。
| 归档时间: |
|
| 查看次数: |
1698 次 |
| 最近记录: |