当我们更新客户的软件安装时,我们目前有一种相当手动、繁琐、混乱且容易出错的方式来运行 SQL 部署脚本。我们正在考虑寻找一个第三方 SQL 部署工具来自动化这个过程。
但是,我正在将构建我们自己的 SQL 部署工具的想法推广到应用程序本身。这很简单——在应用程序启动时,它会:
1)检查现有的数据库架构版本(例如“35”)
2)检查“最新”数据库模式版本(例如“38”)
3)从资源文件中检索相关的SQL部署脚本(如“36”、“37”、“38”)
4) 锁定数据库并运行每个所需的 SQL 部署脚本
请注意,如果发生任何错误,这仍将由 IT 技术人员运行,而不是由最终用户运行。
这似乎很不正统,但我真的没有看到任何问题。你的意见?