NHibernate SchemaUpdate 再次添加现有外键?

标签 nhibernate schema database-schema

我正在使用 SchemaUpdate 将我的 hbms 与现有数据库同步。数据库最近基于 hbms 创建,并且是完全最新的。但是 SchemaUpdate 再次生成所有外键约束。

例如,假设您有 StudentTeacherStudent 与名为 ArtTeacherTeacher 存在关联。 ArtTeacher 是从 StudentTeacher 的外键。假设数据库是最新的,当前保存有 StudentTeacher 及其外键关系。因此,HBMDatabase 是等效的。知道 SchemaUpdate 不能执行任何操作,但是当我看到它生成的脚本时,它会再次重新生成该外键。

为什么会发生这种情况?有什么办法可以避免吗?

最佳答案

秘诀是确保您指定外键的名称,否则 NHibernate 将生成一个与现有架构不匹配的随机名称。

(我从 Afshar 博客文章的 Google 缓存中找到了这个答案)。

关于NHibernate SchemaUpdate 再次添加现有外键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4040608/

相关文章:

c# - nHibernate 的通用存储库

c# - 如何为 NHibernate for MySQL MD5 设置标准?

php - 如何隐藏php代码和mysql表模式

mysql。无法创建架构。我收到此错误 : ERROR 1005 (HY000): (errno: 150)

c# - 为什么我不能覆盖 hibernate.cfg.xml 中的配置

c# - 与 Entity Framework 的非键关联

python - 用户不存在并且没有重定向到 django 项目中创建的租户

mysql - 我可以将一个产品的多个附加组件存储为 JSON 形式的表列中吗?

mysql - 使用 JOIN 和 GROUP BY 时出现重复条目

数据库设计 - 两个项目应该共享同一个表吗?