Java 无法创建外键mysql
我正试图创建一个外键,如下代码所示,但我得到了以下错误,我已经检查了字段,它的类型与您可以看到的类型相同int(6)not null,但我仍然得到这个错误 #1005-无法创建表unicesumar.br_functionarios(错误号150“外键约束格式不正确”) 我通过phpMyAdmin在xampp上使用mysql 我已经在谷歌上搜索过了,但我仍然被困在这种情况下Java 无法创建外键mysql,java,php,mysql,postgresql,Java,Php,Mysql,Postgresql,我正试图创建一个外键,如下代码所示,但我得到了以下错误,我已经检查了字段,它的类型与您可以看到的类型相同int(6)not null,但我仍然得到这个错误 #1005-无法创建表unicesumar.br_functionarios(错误号150“外键约束格式不正确”) 我通过phpMyAdmin在xampp上使用mysql 我已经在谷歌上搜索过了,但我仍然被困在这种情况下 有人能帮我吗谢谢你应该在引用表的主键 什么会阻止您在br_users中使用同一个COD_用户创建两个不同的记录 在这种情况
有人能帮我吗谢谢你应该在引用表的主键 什么会阻止您在br_users中使用同一个COD_用户创建两个不同的记录
在这种情况下,应该引用哪个记录?id-是自动生成的代码,cod\u user是您可以为每个用户创建的手动代码,我将尝试将其引用到id谢谢解决了我的问题我刚刚删除了id,并将br_users中的cod_user作为主键,而不自动递增,它的工作方式是:)
br_users。cod_user
需要是唯一的
才能标记为外键。
CREATE TABLE `br_users` (
`ID` int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
`COD_USER` int(6) NOT NULL,
`SUPERIOR` int(6) DEFAULT NULL,
`AREA` int(11) DEFAULT NULL,
`SENHA` varchar(32) DEFAULT NULL,
`ATIVO` int(1) NOT NULL
);
CREATE TABLE `br_funcionarios` (
`ID` int(11) PRIMARY KEY AUTO_INCREMENT,
`COD_USER_FK` int(6) NOT NULL,
`CPF` int(11) DEFAULT NULL,
`RG` varchar(15) DEFAULT NULL,
`TELEFONE` varchar(255) DEFAULT NULL,
`ENDERECO` varchar(255) DEFAULT NULL,
`EMAIL` varchar(255) DEFAULT NULL,
`CTP` varchar(50) DEFAULT NULL,
`NOME` varchar(255) DEFAULT NULL,
FOREIGN KEY(COD_USER_FK) REFERENCES BR_USERS(COD_USER)
)