【问题标题】:[HY000][1215] Cannot add foreign key constraint[HY000][1215] 无法添加外键约束
【发布时间】:2018-12-14 14:39:42
【问题描述】:

application_user

-- auto-generated definition
create table application_user
(
  id        bigint auto_increment
    primary key,
  email     varchar(255) not null,
  is_active bit          null,
  name      varchar(255) not null,
  password  varchar(255) not null,
  surname   varchar(255) not null,
  username  varchar(255) not null
)
  engine = MyISAM;

我有一张由休眠生成的表。 我想创建一个表并手动添加一个外键。

到目前为止,我尝试过这个

application_user_log

CREATE TABLE application_user_log (
  log_id BIGINT NOT NULL AUTO_INCREMENT,
  fk_user_id BIGINT NOT NULL,
  old_user_name BIGINT NOT NULL,
  new_user_name BIGINT NOT NULL,
  PRIMARY KEY (log_id),
  FOREIGN KEY  (fk_user_id) REFERENCES application_user(id)
) ;

我收到此错误消息。:[HY000][1215] Cannot add foreign key constraint

为什么会出现这个错误?

【问题讨论】:

  • 因为 MyISAM 不支持外键
  • MyISAM 不支持外键 (details here)。
  • 那么我应该怎么做才能创建一个表,该表的外键引用了由 hibernate 创建的表?

标签: java mysql hibernate


【解决方案1】:

嗯,我不知道为什么我的回答被转换成评论,但我知道 MyISAM 不支持外键。 You can read details这里。

【讨论】:

    猜你喜欢
    • 2014-08-24
    • 2013-09-26
    • 2014-03-27
    • 2018-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-24
    • 1970-01-01
    相关资源
    最近更新 更多