MySQL错误150,无法创建表

Kdg*_*Dev 3 mysql mysql-error-1005

我在制作桌子时遇到了麻烦,我不明白什么是错的.phpMyAdmin设置PRIMARY KEY声明旁边的错误指示符...我不知道为什么这是错误的...

此表是子表,与另一个表具有一对多的标识关系.

CREATE TABLE IF NOT EXISTS `ruilen`.`Voorwerpen` (
`voorwerpen_id` INT NOT NULL AUTO_INCREMENT ,
`naam` VARCHAR( 45 ) NOT NULL ,
`beschrijving` VARCHAR( 45 ) NULL ,
`Gebruikers_gebruiker_id` INT NOT NULL ,
PRIMARY KEY ( `voorwerpen_id` , `Gebruikers_gebruiker_id` ) ,
CONSTRAINT `fk_Voorwerpen_Gebruikers1` FOREIGN KEY ( `Gebruikers_gebruiker_id` ) REFERENCES `ruilen`.`Gebruikers` (
`gebruiker_id`
) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE = InnoDB;

MySQL said: Documentation
#1005 - Can't create table 'ruilen.voorwerpen' (errno: 150) 
Run Code Online (Sandbox Code Playgroud)

编辑:这是我能找到的错误代码的所有文档:链接

EDIT2:pic已删除

EDIT3:

CREATE TABLE `gebruikers` (
 `gebruiker_id` int(11) NOT NULL,
 `naam` varchar(45) NOT NULL,
 `straat` varchar(45) NOT NULL,
 `gemeente` varchar(45) NOT NULL,
 `mail` varchar(45) NOT NULL,
 `beschrijving` varchar(45) DEFAULT NULL,
 PRIMARY KEY (`gebruiker_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
Run Code Online (Sandbox Code Playgroud)

Qua*_*noi 15

检查Gebruikers_gebruiker_idGebruikers.gebruiker_id具有相同的数据类型.

还检查一下Gebruikers.gebruiker_idPRIMARY KEYGebruikers

更新:

您已ON DELETE SET NULL定义,而您Gebruikers_gebruiker_id的定义为NOT NULL.

修复它(更改ON DELETE CASCADE或删除子句),您将能够创建引用.