java、MySQL 和 'field list' 中的未知列 'DTYPE'

java, MySQL and Unknown column 'DTYPE' in 'field list'

我有 2 类: A 和 B 使得 B 扩展 A。 使用hibernate,A是一个普通的具体实体,有一个关联的table,一切都很好。

B 被定义为扩展 A,并且 A 和 B 是可序列化的,并且有 2 个额外的成员,我为其添加了 @Transient 注释。我不希望将这些保存在 DB 中,并且就我而言,对我来说 table 中的所有行都只是 A 的实例,持久化。 目标是偶尔在会话中保存 B 实例。 但是在某些时候我需要在数据库中保存一个 B 对象(就好像它是一个 A)。我没有也不需要 DiscriminatorColumn 或类似的东西。

我试过类似的东西:

session.saveOrUpdate((A) b);

... b 是 B 的一个实例。这失败了。

有人知道如何解决这个问题吗?

我猜你已经将 @Entity 添加到你的 class B。这会创建一个 实体 class 层次结构 - 需要区分不同的实体 classes。如果删除注释,则不再需要该列。