概要
SQL 数据库项目的 CI/CD 为数据库开发带来了与应用程序代码相同的自动化、一致性和安全保障。
在本模块中,你已了解如何:
-
创建、生成和验证 SQL 数据库项目:在声明性 T-SQL 文件中定义数据库对象,将其生成为
.dacpac项目,并使用 SDK 样式Microsoft.Build.Sql的项目格式验证目标平台的引用和语法。 -
配置源代码管理和管理引用数据:在 Git 中放置 SQL 数据库项目、按对象类型组织文件,以及通过 SQLCMD
:r使用预部署和部署后脚本,包括管理与架构一起的引用数据。 - 管理分支、拉取请求和冲突解决:使用功能分支进行数据库更改、查看拉取请求中的 T-SQL 差异、解决对象级别的合并冲突,以及使用项目生成验证合并结果。
- 检测和解决架构偏移:使用架构比较工具将实时数据库与 SQL 数据库项目进行比较,使用 SqlPackage 提取自动执行偏移检测,并使用部署报表和脚本查看计划的更改。
-
使用部署控制实现 CI/CD 管道:使用 GitHub Actions(
.dacpac)和 Azure DevOpsazure/sql-action()生成和部署SqlAzureDacpacDeployment文件,通过存储库机密和 Azure Key Vault 管理机密,并通过环境审批、分支策略和代码所有者保护生产。 - 设计和实现测试策略:创建具有测试条件(行计数、标量值、预期架构)的 SQL Server 单元测试,编写错误处理的负面测试,并将测试集成到 CI/CD 管道,以在部署之前捕获逻辑错误。