2011-05-12 6 views
3

NetBeans7에서 "데이터베이스의 엔터티 클래스"를 추가하려고하면 다음과 같은 문제가 발생합니다. 왼쪽 테이블 중 일부가 회색으로 표시되고 "(기본 키 없음)으로 표시됩니다. ", 그래서 그들을 추가 할 수 없습니다. 실제로 기본 키가 정확합니다. 테이블 그룹, 그룹 연도, 전문화은 회색이며 다른 모든 그룹은 괜찮습니다. 더 나은 이해를 위해NetBeans에서 "기본 키가 없습니다"오류가 발생했습니다

SET @[email protected]@UNIQUE_CHECKS, UNIQUE_CHECKS=0; 
SET @[email protected]@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; 
SET @[email protected]@SQL_MODE, SQL_MODE='TRADITIONAL'; 

DROP SCHEMA IF EXISTS `mydb` ; 
CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci ; 
USE `mydb` ; 

-- ----------------------------------------------------- 
-- Table `mydb`.`Faculty` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Faculty` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`Faculty` (
    `idFaculty` INT NOT NULL , 
    `name` VARCHAR(45) NOT NULL , 
    PRIMARY KEY (`idFaculty`)) 
ENGINE = InnoDB; 


-- ----------------------------------------------------- 
-- Table `mydb`.`Specialization` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Specialization` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`Specialization` (
    `idSpecialization` INT NOT NULL , 
    `Faculty_idFaculty` INT NOT NULL , 
    `Name` VARCHAR(45) NOT NULL , 
    PRIMARY KEY (`idSpecialization`) , 
    CONSTRAINT `fk_Specialization_Faculty` 
    FOREIGN KEY (`Faculty_idFaculty`) 
    REFERENCES `mydb`.`Faculty` (`idFaculty`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

CREATE INDEX `fk_Specialization_Faculty` ON `mydb`.`Specialization` (`Faculty_idFaculty` ASC) ; 


-- ----------------------------------------------------- 
-- Table `mydb`.`Student` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Student` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`Student` (
    `idStudent` INT NOT NULL , 
    `Specialization_idSpecialization` INT NOT NULL , 
    `Name` VARCHAR(45) NOT NULL , 
    PRIMARY KEY (`idStudent`) , 
    CONSTRAINT `fk_Student_Specialization1` 
    FOREIGN KEY (`Specialization_idSpecialization`) 
    REFERENCES `mydb`.`Specialization` (`idSpecialization`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

CREATE INDEX `fk_Student_Specialization1` ON `mydb`.`Student` (`Specialization_idSpecialization` ASC) ; 


-- ----------------------------------------------------- 
-- Table `mydb`.`Discipline` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Discipline` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`Discipline` (
    `idDiscipline` INT NOT NULL , 
    `Name` VARCHAR(45) NOT NULL , 
    PRIMARY KEY (`idDiscipline`)) 
ENGINE = InnoDB; 


-- ----------------------------------------------------- 
-- Table `mydb`.`Lecturer` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Lecturer` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`Lecturer` (
    `idLecturer` INT NOT NULL , 
    `Name` VARCHAR(45) NOT NULL , 
    PRIMARY KEY (`idLecturer`)) 
ENGINE = InnoDB; 


-- ----------------------------------------------------- 
-- Table `mydb`.`GroupsYear` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`GroupsYear` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`GroupsYear` (
    `idGroupsYear` INT NOT NULL , 
    `Discipline_idDiscipline` INT NOT NULL , 
    `Lecturer_idLecturer` INT NOT NULL , 
    `Year` YEAR NOT NULL , 
    PRIMARY KEY (`idGroupsYear`) , 
    CONSTRAINT `fk_Groups_Year_Discipline1` 
    FOREIGN KEY (`Discipline_idDiscipline`) 
    REFERENCES `mydb`.`Discipline` (`idDiscipline`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION, 
    CONSTRAINT `fk_GroupsYear_Lecturer1` 
    FOREIGN KEY (`Lecturer_idLecturer`) 
    REFERENCES `mydb`.`Lecturer` (`idLecturer`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

CREATE INDEX `fk_Groups_Year_Discipline1` ON `mydb`.`GroupsYear` (`Discipline_idDiscipline` ASC) ; 

CREATE INDEX `fk_GroupsYear_Lecturer1` ON `mydb`.`GroupsYear` (`Lecturer_idLecturer` ASC) ; 


-- ----------------------------------------------------- 
-- Table `mydb`.`Groups` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Groups` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`Groups` (
    `idGroups` INT NOT NULL , 
    `GroupsYear_idGroupsYear` INT NOT NULL , 
    `Lecturer_idLecturer` INT NOT NULL , 
    PRIMARY KEY (`idGroups`) , 
    CONSTRAINT `fk_Group_GroupsYear1` 
    FOREIGN KEY (`GroupsYear_idGroupsYear`) 
    REFERENCES `mydb`.`GroupsYear` (`idGroupsYear`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION, 
    CONSTRAINT `fk_Group_Lecturer1` 
    FOREIGN KEY (`Lecturer_idLecturer`) 
    REFERENCES `mydb`.`Lecturer` (`idLecturer`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

CREATE INDEX `fk_Group_GroupsYear1` ON `mydb`.`Groups` (`GroupsYear_idGroupsYear` ASC) ; 

CREATE INDEX `fk_Group_Lecturer1` ON `mydb`.`Groups` (`Lecturer_idLecturer` ASC) ; 


-- ----------------------------------------------------- 
-- Table `mydb`.`Current_Group_has_Student` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Current_Group_has_Student` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`Current_Group_has_Student` (
    `Groups_idGroups` INT NOT NULL , 
    `Student_idStudent` INT NOT NULL , 
    PRIMARY KEY (`Groups_idGroups`, `Student_idStudent`) , 
    CONSTRAINT `fk_Groups_has_Student_Groups1` 
    FOREIGN KEY (`Groups_idGroups`) 
    REFERENCES `mydb`.`Groups` (`idGroups`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION, 
    CONSTRAINT `fk_Groups_has_Student_Student1` 
    FOREIGN KEY (`Student_idStudent`) 
    REFERENCES `mydb`.`Student` (`idStudent`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

CREATE INDEX `fk_Groups_has_Student_Student1` ON `mydb`.`Current_Group_has_Student` (`Student_idStudent` ASC) ; 

CREATE INDEX `fk_Groups_has_Student_Groups1` ON `mydb`.`Current_Group_has_Student` (`Groups_idGroups` ASC) ; 


-- ----------------------------------------------------- 
-- Table `mydb`.`LongTimeAgo_Group_has_Student` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`LongTimeAgo_Group_has_Student` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`LongTimeAgo_Group_has_Student` (
    `Groups_idGroups` INT NOT NULL , 
    `Student_idStudent` INT NOT NULL , 
    PRIMARY KEY (`Groups_idGroups`, `Student_idStudent`) , 
    CONSTRAINT `fk_Groups_has_Student_Groups2` 
    FOREIGN KEY (`Groups_idGroups`) 
    REFERENCES `mydb`.`Groups` (`idGroups`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION, 
    CONSTRAINT `fk_Groups_has_Student_Student2` 
    FOREIGN KEY (`Student_idStudent`) 
    REFERENCES `mydb`.`Student` (`idStudent`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

CREATE INDEX `fk_Groups_has_Student_Student2` ON `mydb`.`LongTimeAgo_Group_has_Student` (`Student_idStudent` ASC) ; 

CREATE INDEX `fk_Groups_has_Student_Groups2` ON `mydb`.`LongTimeAgo_Group_has_Student` (`Groups_idGroups` ASC) ; 


-- ----------------------------------------------------- 
-- Table `mydb`.`Past_Group_has_Student` 
-- ----------------------------------------------------- 
DROP TABLE IF EXISTS `mydb`.`Past_Group_has_Student` ; 

CREATE TABLE IF NOT EXISTS `mydb`.`Past_Group_has_Student` (
    `Groups_idGroups` INT NOT NULL , 
    `Student_idStudent` INT NOT NULL , 
    PRIMARY KEY (`Groups_idGroups`, `Student_idStudent`) , 
    CONSTRAINT `fk_Groups_has_Student_Groups3` 
    FOREIGN KEY (`Groups_idGroups`) 
    REFERENCES `mydb`.`Groups` (`idGroups`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION, 
    CONSTRAINT `fk_Groups_has_Student_Student3` 
    FOREIGN KEY (`Student_idStudent`) 
    REFERENCES `mydb`.`Student` (`idStudent`) 
    ON DELETE NO ACTION 
    ON UPDATE NO ACTION) 
ENGINE = InnoDB; 

CREATE INDEX `fk_Groups_has_Student_Student3` ON `mydb`.`Past_Group_has_Student` (`Student_idStudent` ASC) ; 

CREATE INDEX `fk_Groups_has_Student_Groups3` ON `mydb`.`Past_Group_has_Student` (`Groups_idGroups` ASC) ; 



SET [email protected]_SQL_MODE; 
SET [email protected]_FOREIGN_KEY_CHECKS; 
SET [email protected]_UNIQUE_CHECKS; 

: http://i.stack.imgur.com/cGsjG.png

나는 사람이 스키마의 실수를 찾을 수 있기를 바랍니다.

+0

최대 절전 모드 용 자바 클래스를 생성하려고합니까? – Bhushan

답변

2

답변을 찾았습니다. 아마도 최상의 것은 아니지만,이 링크 덕분에 http://aquaryus.wordpress.com/2011/04/11/tutorial-create-a-quick-jee-web-service-with-mysql-and-netbeans-glassfish/ 방금 ​​엔진 유형 InnoDB를 MyISAM으로 대체했습니다. 이제 모든 것이 잘 작동합니다! (적어도 JPA를위한 정확한 POJO를 생성 할 수 있습니다) 그러나 InnoDB가 작동하지 않는 이유는 아직 열려 있습니다.

+0

생명의 은인 +100. 나는 이것이 효과가 있음을 확인한다. 링크가 깨져 보였지만, "Engine = InnoDB"를 "Engine = MyISAM"으로 변경했고 모든 것이 이제 작동합니다! – Mazyod

관련 문제