我正在使用Nhibernate和Fluent Nhibernate。
我陷入了陷阱,我认为很多新用户都会陷入困境,最终我的所有varchar列都以255个字符结束。由于政治上的原因太无聊了,这些字段中的数据立即被删除(boo),所以我需要更新列长而不删除和重新创建表。
但是,如果我将字符串长度的约定应用于Fluent配置,并使用NHibernate UpdateSchema方法,则只有新表似乎获得新的varchar长度。这是正确的,有没有办法将其应用于现有的表??
答案 0 :(得分:2)
你不一定需要nHibernate。
你没有提到底层数据库实例是什么,但我确信它有更新列属性的选项。我认为这是最简单的解决方案。
答案 1 :(得分:0)
UpdateSchema仅应用非破坏性更新。它不是迁移实用程序,而是在开发期间快速更改模型/数据库表。有关详细信息,请参阅我对NHibernate, ORM : how is refactoring handled? existing data?的回答。