数据库开发的持续集成 - Sql Server数据库结构比较
本系列文章目录
数据库开发的持续集成 - Sql Server 部署升级工具
数据库开发的持续集成 - Sql Server数据库结构比较
数据库开发的持续集成 - 方法和流程
数据库开发的持续集成 - Liquibase的简介和应用
数据库的持续集成 - CruiseControl.Net的项目配置
上回说到了数据库开发的持续集成的总的意图,提供一个数据库部署和升级的工具,接下来说说如何进行数据库比较。
在我的开发中数据库比较工具主要需要两种形式: 桌面工具和MsBuid任务。
桌面工具推荐开源的DaBCoS3,基本够用,有朋友推荐直接用VS2005,但我比较喜欢小巧一点的东东,因为不仅仅在数据库开发的时候用。
MsBuild任务很重要,在持续集成的时候可用来验证升级脚本是否正常工作。在CC.Net中加入SqlDeply任务(MsBuild),对产品系统数据库的副本进行升级,然后使用MsBuild数据库比较任务比较升级后的结构与开发数据库是否相同。以此来验证升级脚本,相当于对升级脚本做自动测试(当然还有回归测试),可大大节约人力。
在网上搜寻一大圈,发现Red Gate提供的程序集不错,但要$,放弃。绕了一大圈,回到M$,PowerTools被选中。要先装Team Edition for Database。
数据结构比较的MsBuild任务如此例:








































数据库数据比较的MsBuild任务如此例:




















Update 20060617
最终我选定了Java下的liquibase作为数据库比较、升级、部署的工具,已应用在数据库持续集成开发项目中(参见方法和流程),感觉不错,唯一缺憾就是暂时还不支持.Net
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义