0

AとBの2つのテーブルがあります。AはBと1:1の関係にあります。

「データベースからエンティティクラスを作成する」を実行すると、Netbeansは2つのエンティティクラスを生成しますが、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 に答える