San*_*der 5 sql-server database-project database-versioning visual-studio
我们假设我正在对我的数据库进行某种非常重要的更改,这需要"自定义"工作从版本A升级到B.例如,将用户ID列从UUID数据类型转换为Windows域用户名.
如何使其自动部署?也就是说,我想允许开发人员右键单击项目,单击"Deploy"并在他们使用足够老的数据库时执行此逻辑.
我没有在数据库项目中看到任何此类登录的位置 - 似乎没有任何此类"升级脚本"的规定.这真的不可能吗?为了澄清,逻辑显然不能自动生成,但我希望它根据需要自动执行.
当然,第一个逻辑障碍是部署实用程序不知道是否需要更新任何此类逻辑 - 我假设我也可以为此提供逻辑(例如,检查版本表以及是否最新version <5.0,执行此升级,稍后添加新版本行).
这可能吗?我可以使用复杂的自定义更改脚本进行全自动部署吗?没有我必须将我的所有自定义更改逻辑都粘贴到(即将成为)巨大的构建前或构建后脚本中,当然......
老实说,最好的选择是使用数据库迁移的概念,如果我没记错的话,它来自 Ruby 世界。我在我的应用程序中使用了一个名为Migrator.Net的框架,但是有很多非常好的框架(具有不同的活动级别)基本上可以做同样的事情。快速谷歌搜索就会发现很多。
| 归档时间: |
|
| 查看次数: |
1156 次 |
| 最近记录: |