微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么MySQL工作台使我的所有外键都唯一?

如何解决为什么MySQL工作台使我的所有外键都唯一?

我创建了一个带有几个表的MysqL模型,其中一些表带有fk到另一个表。我通常使用文件->导出->正向工程师sql CREATE脚本中的“正向工程师sql CREATE脚本”将sqlMysqL模型导出到数据库中。这里的问题是,当我生成创建脚本时,我所有的fk都变得唯一。我没有在MysqL Model中检查UQ选项,但是无论如何它都会创建具有唯一fk的脚本,因此,我需要更改生成sql文件删除所有不需要的唯一。有人知道为什么会这样吗?

Table description

生成的脚本:

CREATE TABLE IF NOT EXISTS `u514786799_detranleiloes`.`Lotes` (
  `createdAt` DATE NOT NULL,`updatedAt` DATE NOT NULL,`id` INT UNIQUE NOT NULL AUTO_INCREMENT,`LeiloesId` INT UNIQUE NOT NULL,`conservado` tinyint NULL,`numero` INT NOT NULL,`CRDsId` INT UNIQUE NULL,PRIMARY KEY (`id`),INDEX `fk_Lotes_Leiloes_idx` (`LeiloesId` ASC),INDEX `fk_Lotes_CRDs1_idx` (`CRDsId` ASC),CONSTRAINT `fk_Lotes_Leiloes`
    FOREIGN KEY (`LeiloesId`)
    REFERENCES `u514786799_detranleiloes`.`Leiloes` (`id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,CONSTRAINT `fk_Lotes_CRDs1`
    FOREIGN KEY (`CRDsId`)
    REFERENCES `u514786799_detranleiloes`.`CRDs` (`id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB
AUTO_INCREMENT = 1;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。