我正在使用 SchemaUpdate
将我的 hbms
与现有数据库同步。数据库最近基于 hbms
创建,并且是完全最新的。但是 SchemaUpdate
再次生成所有外键约束。
例如,假设您有 Student
和 Teacher
。 Student
与名为 ArtTeacher
的 Teacher
存在关联。 ArtTeacher
是从 Student
到 Teacher
的外键。假设数据库是最新的,当前保存有 Student
、Teacher
及其外键关系。因此,HBM
和 Database
是等效的。知道 SchemaUpdate 不能执行任何操作,但是当我看到它生成的脚本时,它会再次重新生成该外键。
为什么会发生这种情况?有什么办法可以避免吗?
最佳答案
秘诀是确保您指定外键的名称,否则 NHibernate 将生成一个与现有架构不匹配的随机名称。
(我从 Afshar 博客文章的 Google 缓存中找到了这个答案)。
关于NHibernate SchemaUpdate 再次添加现有外键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4040608/