0

我有两个表:A 和 B。A 与 B 的关系为 1:1。

当我执行“从数据库创建实体类”时,Netbeans 会生成两个实体类,但 A 有一个注释:

@OneToMany
private List<B> bCollections;

但是我设置了 1:1 的关系,为什么会发生这种情况?

SQL脚本:

-- -----------------------------------------------------
-- Table `mydb`.`A`
-- ----------------------------------------------------

CREATE  TABLE IF NOT EXISTS `mydb`.`A` (

  `idA` INT NOT NULL ,

  `value` VARCHAR(45) NULL ,

  PRIMARY KEY (`idA`) )

ENGINE = InnoDB;

-- -----------------------------------------------------
-- Table `mydb`.`B`
-- -----------------------------------------------------

CREATE  TABLE IF NOT EXISTS `mydb`.`B` (

  `idB` INT NOT NULL ,

  `values` VARCHAR(45) NULL ,

  `A_idA` INT NOT NULL ,

  PRIMARY KEY (`idB`) ,

  INDEX `fk_B_A` (`A_idA` ASC) ,

  CONSTRAINT `fk_B_A`

    FOREIGN KEY (`A_idA` )

    REFERENCES `mydb`.`A` (`idA` )

    ON DELETE NO ACTION

    ON UPDATE NO ACTION)

ENGINE = InnoDB;
4

1 回答 1

1

也许添加约束

UNIQUE (A_idA)
于 2012-06-21T10:42:48.380 回答