1

我在创建表时遇到问题。

问题在于创建与另一个表的外键/关系。

互联网告诉我检查列类型并检查它是否与我引用的列相同。和它一样。

互联网给我的其他解决方案没有用所以有人可以帮助我吗?

这是查询:

CREATE  TABLE IF NOT EXISTS `finprodb`.`tblproject` (
  `prj_id` INT(11) NOT NULL AUTO_INCREMENT ,
  `prj_nummer` VARCHAR(45) NOT NULL ,
  `prj_omschrijving` TEXT NULL DEFAULT NULL ,
  `prj_verkoop_waarde` DECIMAL(20,4) NULL DEFAULT NULL ,
  `prj_gereed` TINYINT(4) NULL DEFAULT NULL ,
  `prj_bedr_id` INT(11) NOT NULL ,
  PRIMARY KEY (`prj_id`) ,
  UNIQUE INDEX `prj_id_UNIQUE` (`prj_id` ASC) ,
  INDEX `fk_tblproject_tblbedrijf1_idx` (`prj_bedr_id` ASC) ,
  CONSTRAINT `fk_tblproject_tblbedrijf1`
    FOREIGN KEY (`prj_bedr_id` )
    REFERENCES `finprodb`.`tblbedrijf` (`bedr_id` )
    ON DELETE SET NULL
    ON UPDATE CASCADE)
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_general_ci
4

2 回答 2

1

ON DELETE SET NULL不顺利prj_bedr_id INT(11) NOT NULL

使列可以为空(删除NOT

于 2013-03-07T09:15:31.753 回答
0

我不太了解 MYSQL,但在 DB2 中,除非在父表中引用的列上存在唯一索引,否则无法创建关系。上是否有唯一索引finprodbtblbedrijf( bedr_id) ?

于 2013-03-07T09:18:25.983 回答