问答详情
源自:1-3 实体和映射的创建

完全按步骤来的,建的表没有外键

完全按照步骤来的,怎么建的表没有外键呢?

<set name="employees">

<key column="dno"/>

<one-to-many class="com.dz.employee.domain.Employee"/>

</set>

<many-to-one name="department" class="com.dz.employee.domain.Department" column="dno"/>

提问者:qq_Soul冷眸_03284601 2017-01-01 15:48

个回答

  • qq_死肥仔_0
    2018-08-10 15:54:43

    其中一个或者两个表是MyISAM引擎的表。若想要使用外键约束,表必须是InnoDB引擎(实际上,如果两个表都是MyISAM 引擎的,这个错误根本不会发生,但也不会产生外键,只会建立索引)你需要检查表的引擎类型。

    把mysql的方言改成

    org.hibernate.dialect.MySQL5InnoDBDialect

    就可以解决了

  • qq_Soul冷眸_03284601
    2017-01-02 13:47:57

    这个employees是指的Department中的set集合啊

  • Tom_H
    2017-01-01 22:05:41

    你employees,多了一个s