gpt4 book ai didi

java - Hibernate 未设置引用列

转载 作者:行者123 更新时间:2023-11-29 23:28:23 25 4
gpt4 key购买 nike

我在 OSX 上使用 hibernate 4.3.7.Final 和 Mysql 5.5.8。

我有一个 joinTable 关系设置,但是我的外键无法添加:

[ERROR] org.hibernate.tool.hbm2ddl.SchemaExport - HHH000389: Unsuccessful: alter table T_USER_AUTHORITY add constraint FK_fr51fcyulxn31ijiotp4fx7i5 foreign key (email) references T_USER
[ERROR] org.hibernate.tool.hbm2ddl.SchemaExport - Can't create table 'carcloud.#sql-149c1_195' (errno: 150)

如果我运行SHOW ENGINE INNODB STATUS;我得到以下信息:

------------------------
LATEST FOREIGN KEY ERROR
------------------------
141106 5:48:00 Error in foreign key constraint of table carcloud/#sql-149c1_123:
foreign key (email) references T_USER:
Syntax error close to:

如果我运行:

alter table T_USER_AUTHORITY add constraint FK_fr51fcyulxn31ijiotp4fx7i5 foreign key (email) references T_USER (email);

约束已成功添加,请在末尾注明(电子邮件),这是引用列。

它被设置为我的主键:

CREATE TABLE `T_USER` (
`email` varchar(100) NOT NULL,
`created_by` varchar(50) NOT NULL,
`created_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`last_modified_by` varchar(50) DEFAULT NULL,
`last_modified_date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`OPT_LOCK` int(11) DEFAULT NULL,
`first_name` varchar(50) DEFAULT NULL,
`last_name` varchar(50) DEFAULT NULL,
`password` varchar(100) DEFAULT NULL,
`phone` varchar(100) NOT NULL,
PRIMARY KEY (`email`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

有什么想法吗?

最佳答案

我看到的唯一区别是在Hibernate“引用T_USER”和sql“引用T_USER(电子邮件)”中,因此您应该插入调用“​​alter table T_USER_AUTHORITY添加约束FK_fr51fcyulxn31ijiotp4fx7i5等..”的java代码

关于java - Hibernate 未设置引用列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26772676/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com