Нет связей в классах сущностей, созданных с помощью NetBeans из базы данных - PullRequest
0 голосов
/ 24 марта 2011

Я использую Netbeans для создания класса сущностей из базы данных, я выбираю все таблицы в моей базе данных, и классы создаются без какой-либо информации об отношениях, таких как @OneToMany, @ManyToOne и т. Д. Это пример двух таблиц, которые у меня есть в моей БД. Что еще мне нужно указать при создании таблиц?

CREATE TABLE `Indicator` (
  `ID` int(11) NOT NULL,
  `Number` int(11) NOT NULL,
  `ApplicablePeriodTypeID` int(11) NOT NULL,
  `IndicatorSourceID` int(11) DEFAULT NULL,
  PRIMARY KEY (`ID`),
  KEY `IndicatorSourceID` (`IndicatorSourceID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1$$

CREATE TABLE `IndicatorSource` (
  `ID` int(11) NOT NULL,
  `CollectionName` varchar(255) NOT NULL,
  `URL` varchar(1000) DEFAULT NULL,
  `Number` int(11) NOT NULL,
  `SourceName` varchar(255) NOT NULL,
  PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1$$

Ответы [ 4 ]

0 голосов
/ 04 апреля 2011

Какую базу данных вы используете ??Вы уверены, что настроили соединение с базой данных, используя совместимый драйвер для вашей базы данных и версию jdk ...

0 голосов
/ 24 марта 2011

Изменение ДВИГАТЕЛЯ на InnoDB и добавление внешних ключей решило проблему.какой-то механизм БД, отличный от InnoDB, не поддерживает внешний ключ, и при попытке добавить его он не генерирует никаких ошибок.

0 голосов
/ 01 апреля 2011

В качестве примечания: кажется, что функция создания классов сущностей из базы данных в Netbeans 6.9 не добавляет связи для внешних ключей, перенесенных из альтернативных ключей - только те, которые перенесены из первичных ключей.

0 голосов
/ 24 марта 2011

Возможно, вам потребуется добавить ограничение внешнего ключа, например, на IndicatorSourceID.В противном случае нет никаких намеков на то, что IndicatorSourceID относится к IndicatorSource.ID.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...