我想编写一个SQL迁移工具。该工具必须:
我可以使用一些验证框架,或者我可以使用nHibernate吗?
答案 0 :(得分:8)
这里的派对有点晚了,但这是对名单的一个很好的补充: -
<强> FluentMigrator 强>
FluentMigrator是一个用C#编写的.NET数据库迁移框架。基本思想是您可以创建迁移,这些迁移只是派生自Migration基类的类,并且具有附加了唯一版本号的Migration属性。执行FluentMigrator后,您可以告诉它要迁移到哪个版本,它将运行所有必要的迁移,以便将您的数据库升级到该版本。
除了正向迁移支持之外,FluentMigrator还支持不同的方式来执行迁移以及称为配置文件和执行任意SQL的选择性迁移。
答案 1 :(得分:1)
不完全是你要求的,但我想我知道你想要达到的目标。
http://code.google.com/p/migratordotnet/
http://ayende.com/Blog/archive/2009/05/01/nhibernate-validator.aspx
还有Schema Updater(NHibernate的一部分)
此博客有一个代码示例。 http://morten.lyhr.dk/2008/03/nhibernates-schemaupdate-feature.html
答案 2 :(得分:1)
尝试DBSourceTools。 http://dbsourcetools.codeplex.com
通过使用修补引擎,它将允许您针对已知状态的数据库可靠地测试修补程序脚本
它是一个结合了Visual Studio Database Edition和MSSQL Management Studio功能的开源工具
理想情况下,您希望测试在任何迁移中运行的所有脚本
为什么需要存储脚本中是否发生验证错误?
当然这意味着脚本没有正确测试?
玩得开心。